Class dbal

Description

Database Abstraction Layer

Located in /includes/db/dbal.php (line 23)


	
			
Direct descendents
Class Description
 class dbal_firebird Firebird/Interbase Database Abstraction Layer
 class dbal_mssql MSSQL Database Abstraction Layer
 class dbal_mssql_odbc Unified ODBC functions Unified ODBC functions support any database having ODBC driver, for example Adabas D, IBM DB2, iODBC, Solid, Sybase SQL Anywhere...
 class dbal_mysql MySQL4 Database Abstraction Layer
 class dbal_mysqli MySQLi Database Abstraction Layer
 class dbal_oracle Oracle Database Abstraction Layer
 class dbal_postgres PostgreSQL Database Abstraction Layer
 class dbal_sqlite Sqlite Database Abstraction Layer
Variable Summary
Method Summary
 dbal dbal ()
 void sql_add_num_queries ([ $cached = false])
 void sql_build_array ( $query, [ $assoc_ary = false])
 void sql_build_query ( $query,  $array)
 void sql_close ()
 void sql_error ([ $sql = ''])
 void sql_fetchfield ( $field, [ $rownum = false], [ $query_id = false])
 void sql_fetchrowset ([ $query_id = false])
 void sql_in_set (string $field, array $array, [bool $negate = false], [bool $allow_empty_set = false])
 string sql_like_expression (string $expression)
 bool sql_multi_insert (string $table, array &$sql_ary)
 void sql_num_queries ([ $cached = false])
 void sql_query_limit ( $query,  $total, [ $offset = 0], [ $cache_ttl = 0])
 void sql_report ( $mode, [ $query = ''])
 void sql_return_on_error ([ $fail = false])
 void sql_transaction ([ $status = 'begin'])
 void _sql_validate_value ( $var)
Variables
mixed $any_char (line 65)

Wildcards for matching any (%) or exactly one (_) character within LIKE expressions

mixed $curtime = 0 (line 33)
mixed $dbname = '' (line 41)
mixed $db_connect_id (line 25)
mixed $html_hold = '' (line 35)
mixed $multi_insert = false (line 55)

Redefined in descendants as:
mixed $num_queries = array() (line 30)
mixed $one_char (line 66)
mixed $open_queries = array() (line 31)
mixed $persistency = false (line 38)
mixed $query_hold = '' (line 34)
mixed $query_result (line 26)
mixed $return_on_error = false (line 27)
mixed $server = '' (line 40)
mixed $sql_error_returned = array() (line 49)
mixed $sql_error_sql = '' (line 47)
mixed $sql_error_triggered = false (line 44)
mixed $sql_layer = '' (line 60)

Current sql layer

mixed $sql_report = '' (line 36)
mixed $sql_time = 0 (line 29)
mixed $transaction = false (line 28)
mixed $transactions = 0 (line 52)
mixed $user = '' (line 39)
Methods
Constructor dbal (line 71)

Constructor

dbal dbal ()
sql_add_num_queries (line 110)

Add to query count

void sql_add_num_queries ([ $cached = false])
  • $cached
sql_build_array (line 312)

Build sql statement from array for insert/update/select statements

Idea for this from Ikonboard Possible query values: INSERT, INSERT_SELECT, UPDATE, SELECT

void sql_build_array ( $query, [ $assoc_ary = false])
  • $query
  • $assoc_ary
sql_build_query (line 488)

Build sql statement from array for select and select distinct statements

Possible query values: SELECT, SELECT_DISTINCT

void sql_build_query ( $query,  $array)
  • $query
  • $array
sql_close (line 120)

DBAL garbage collection, close sql connection

void sql_close ()
sql_error (line 548)

display sql error page

void sql_error ([ $sql = ''])
  • $sql
sql_fetchfield (line 196)

Fetch field

if rownum is false, the current row is used, else it is pointing to the row (zero-based)

void sql_fetchfield ( $field, [ $rownum = false], [ $query_id = false])
  • $field
  • $rownum
  • $query_id
sql_fetchrowset (line 171)

Fetch all rows

void sql_fetchrowset ([ $query_id = false])
  • $query_id
sql_in_set (line 367)

Build IN or NOT IN sql comparison string, uses <> or = on single element arrays to improve comparison speed

  • access: public
void sql_in_set (string $field, array $array, [bool $negate = false], [bool $allow_empty_set = false])
  • string $field: name of the sql column that shall be compared
  • array $array: array of values that are allowed (IN) or not allowed (NOT IN)
  • bool $negate: true for NOT IN (), false for IN () (default)
  • bool $allow_empty_set: If true, allow $array to be empty, this function will return 1=1 or 1=0 then. Default to false.
sql_like_expression (line 231)

Correctly adjust LIKE expression for special characters Some DBMS are handling them in a different way

  • return: LIKE expression including the keyword!
string sql_like_expression (string $expression)
  • string $expression: The expression to use. Every wildcard is escaped, except $this->any_char and $this->one_char

Redefined in descendants as:
sql_multi_insert (line 418)

Run more than one insert statement.

  • return: false if no statements were executed.
  • access: public
bool sql_multi_insert (string $table, array &$sql_ary)
  • string $table: table name to run the statements on
  • array &$sql_ary: multi-dimensional array holding the statement data.
sql_num_queries (line 102)

Return number of sql queries and cached sql queries used

void sql_num_queries ([ $cached = false])
  • $cached
sql_query_limit (line 154)

Build LIMIT query Doing some validation here.

void sql_query_limit ( $query,  $total, [ $offset = 0], [ $cache_ttl = 0])
  • $query
  • $total
  • $offset
  • $cache_ttl
sql_report (line 623)

Explain queries

void sql_report ( $mode, [ $query = ''])
  • $mode
  • $query
sql_return_on_error (line 91)

return on error or display error message

void sql_return_on_error ([ $fail = false])
  • $fail
sql_transaction (line 243)

SQL Transaction

  • access: private
void sql_transaction ([ $status = 'begin'])
  • $status
_sql_validate_value (line 467)

Function for validating values

  • access: private
void _sql_validate_value ( $var)
  • $var

Documentation generated on Tue, 26 Aug 2008 08:34:01 +0200 by phpDocumentor 1.4.2