Class: MDB2_Driver_Common
Source Location: /MDB2-2.0.3/MDB2.php
PEAR
|
--MDB2_Driver_Common
MDB2_Driver_Common: Base class that is extended by each MDB2 driver
Author(s):
|
|
|
Inherited Variables
|
Inherited Methods
|
Class Details
Class Variables
$connected_database_name = ''
[line 1015]
the name of the database currently selected
$connected_dsn = array()
[line 987]
DSN that was used to create the current connection
$connected_server_info = ''
[line 1022]
server version information
$connection = 0
[line 994]
connection resource
$database_name = ''
[line 1008]
the name of the database for the next query
$dbsyntax =
[line 1175]
Database used with regards to SQL syntax etc.
$db_index = 0
[line 973]
index of the MDB2 object within the $GLOBALS['_MDB2_databases'] array
$debug_output = ''
[line 1140]
string with the debugging information
$destructor_registered = true
[line 1203]
determines of the PHP4 destructor emulation has been enabled yet
$dsn = array()
[line 980]
DSN used for the next query
$escape_quotes = ''
[line 1126]
escape character
$fetchmode = MDB2_FETCHMODE_ORDERED
[line 1189]
the default fetchmode used
$in_transaction = false
[line 1147]
determine if there is an open transaction
$last_query =
[line 1182]
the last query sent to the driver
$limit = 0
[line 1161]
result limit used in the next query
$modules = array()
[line 1196]
array of module instances
$offset = 0
[line 1154]
result offset used in the next query
$opened_persistent =
[line 1001]
if the current opened connection is a persistent connection
$options = array(
'ssl' => false,
'field_case' => CASE_LOWER,
'disable_query' => false,
'result_class' => 'MDB2_Result_%s',
'buffered_result_class' => 'MDB2_BufferedResult_%s',
'result_wrap_class' => false,
'result_buffering' => true,
'fetch_class' => 'stdClass',
'persistent' => false,
'debug' => 0,
'debug_handler' => 'MDB2_defaultDebugOutput',
'default_text_field_length' => 4096,
'lob_buffer_length' => 8192,
'log_line_break' => "\n",
'idxname_format' => '%s_idx',
'seqname_format' => '%s_seq',
'seqcol_name' => 'sequence',
'quote_identifier' => false,
'use_transactions' => false,
'decimal_places' => 2,
'portability' => MDB2_PORTABILITY_ALL,
'modules' => array(
'ex' => 'Extended',
'dt' => 'Datatype',
'mg' => 'Manager',
'rv' => 'Reverse',
'na' => 'Native',
'fc' => 'Function',
),'emulate_prepared'=>false,)
[line 1088]
Array of supported options that can be passed to the MDB2 instance. The options can be set during object creation, using MDB2::connect(), MDB2::factory() or MDB2::singleton(). The options can also be set after the object is created, using MDB2::setOptions() or MDB2_Driver_Common::setOption(). The list of available option includes: - $options['ssl'] -> determines if ssl should be used for connections
- $options['field_case'] -> determines what case to force on field/table names
- $options['disable_query'] -> determines if queries should be executed
- $options['result_class'] -> class used for result sets
- $options['buffered_result_class'] -> class used for buffered result sets
- $options['result_wrap_class'] -> class used to wrap result sets into
- $options['result_buffering'] -> boolean should results be buffered or not?
- $options['fetch_class'] -> class to use when fetch mode object is used
- $options['persistent'] -> boolean persistent connection?
- $options['debug'] -> integer numeric debug level
- $options['debug_handler'] -> string function/method that captures debug messages
- $options['default_text_field_length'] -> default text field length to use
- $options['lob_buffer_length'] -> integer LOB buffer length
- $options['log_line_break'] -> string line-break format
- $options['idxname_format'] -> string pattern for index name
- $options['seqname_format'] -> string pattern for sequence name
- $options['seqcol_name'] -> string sequence column name
- $options['quote_identifier'] -> if identifier quoting should be done when check_option is used
- $options['use_transactions'] -> boolean
- $options['decimal_places'] -> integer
- $options['portability'] -> portability constant
- $options['modules'] -> short to long module name mapping for __call()
- $options['emulate_prepared'] -> force prepared statements to be emulated
$phptype =
[line 1168]
Database backend used in PHP (mysql, odbc etc.)
$supported = array(
'sequences' => false,
'indexes' => false,
'affected_rows' => false,
'summary_functions' => false,
'order_by_text' => false,
'transactions' => false,
'current_id' => false,
'limit_queries' => false,
'LOBs' => false,
'replace' => false,
'sub_selects' => false,
'auto_increment' => false,
'primary_key' => false,
'result_introspection' => false,
'prepared_statements' => false,
)
[line 1029]
list of all supported features of the given driver
$warnings = array()
[line 1133]
warnings
Method Detail
MDB2_Driver_Common (Constructor) [line 1225]
MDB2_Driver_Common MDB2_Driver_Common(
)
|
|
PHP 4 Constructor
beginTransaction [line 1804]
mixed beginTransaction(
)
|
|
Start a transaction.
commit [line 1824]
Commit the database changes done during a transaction that is in progress. This function may only be called when auto-committing is disabled, otherwise it will fail. Therefore, a new transaction is implicitly started after committing the pending changes.
compareDefinition [line 2649]
array compareDefinition(
array
$current, array
$previous)
|
|
Obtain an array of changes that may need to applied
Parameters:
currID [line 2769]
mixed currID(
string
$seq_name)
|
|
Returns the current id of a sequence
Parameters:
debug [line 1488]
void debug(
string
$message, [mixed
$scope = ''], [mixed
$is_manip = null])
|
|
set a debug message
Parameters:
disconnect [line 1880]
mixed disconnect(
[bool
$force = true])
|
|
Log out and disconnect from the database.
Parameters:
errorInfo [line 1291]
array errorInfo(
[mixed
$error = null])
|
|
This method is used to collect information about an error
Parameters:
escape [line 1523]
string escape(
string
$text)
|
|
Quotes a string so it can be safely used in a query. It will quote the text so it can safely be used within a query.
Parameters:
exec [line 2100]
mixed exec(
string
$query)
|
|
Execute a manipulation query to the database and return any the affected rows
Parameters:
free [line 1252]
Free the internal references so that the instance can be destroyed
getConnection [line 1590]
Returns a native connection
getDatabase [line 1920]
getDebugOutput [line 1505]
getDeclaration [line 2627]
string getDeclaration(
string
$type, string
$name, string
$field)
|
|
Obtain DBMS specific SQL code portion needed to declare of the given type
Parameters:
getDSN [line 1962]
mixed getDSN(
[string
$type = 'string'], [string
$hidepw = false])
|
|
return the DSN as a string
Parameters:
getIndexName [line 2712]
string getIndexName(
string
$idx)
|
|
adds index name formatting to a index name
Parameters:
getOption [line 1467]
mixed getOption(
string
$option)
|
|
Returns the value of an option
Parameters:
getSequenceName [line 2694]
string getSequenceName(
string
$sqn)
|
|
adds sequence name formatting to a sequence name
Parameters:
getServerVersion [line 2247]
mixed getServerVersion(
[string
$native = false])
|
|
return version information about the server
Parameters:
getWarnings [line 1388]
Get all warnings in reverse order. This means that the last warning is the first element in the array
inTransaction [line 1861]
If a transaction is currently open.
lastInsertID [line 2751]
mixed lastInsertID(
[string
$table = null], [string
$field = null])
|
|
Returns the autoincrement ID if supported or $id or fetches the current ID in a sequence called: $table.(empty($field) ? '' : '_'.$field)
Parameters:
loadModule [line 1696]
void &loadModule(
string
$module, [string
$property = null], [bool
$phptype_specific = null], object on
3)
|
|
loads a module
Parameters:
nextID [line 2731]
mixed nextID(
string
$seq_name, [bool
$ondemand = true])
|
|
Returns the next free id of a sequence
Parameters:
prepare [line 2493]
mixed &prepare(
string
$query, [mixed
$types = null], [mixed
$result_types = null], [mixed
$lobs = array()])
|
|
Prepares a query for multiple execution with execute(). With some database backends, this is emulated. prepare() requires a generic query as string like 'INSERT INTO numbers VALUES(?,?)' or 'INSERT INTO numbers VALUES(:foo,:bar)'. The ? and :[a-zA-Z] and are placeholders which can be set using bindParam() and the query can be send off using the execute() method.
Parameters:
query [line 2137]
mixed &query(
string
$query, [mixed
$types = null], [mixed
$result_class = true], [mixed
$result_wrap_class = false], object a
4)
|
|
Send a query to the database and return any results
Parameters:
queryAll [line 2893]
mixed queryAll(
string
$query, [array
$types = null], [int
$fetchmode = MDB2_FETCHMODE_DEFAULT], [bool
$rekey = false], [bool
$force_array = false], [bool
$group = false])
|
|
Execute the specified query, fetch all the rows of the result set into a two dimensional array and then frees the result set.
Parameters:
queryCol [line 2854]
mixed queryCol(
string
$query, [string
$type = null], [int
$colnum = 0])
|
|
Execute the specified query, fetch the value from the first column of each row of the result set into an array and then frees the result set.
Parameters:
queryOne [line 2793]
mixed queryOne(
string
$query, [string
$type = null])
|
|
Execute the specified query, fetch the value from the first column of the first row of the result set and then frees the result set.
Parameters:
queryRow [line 2824]
mixed queryRow(
string
$query, [array
$types = null], [int
$fetchmode = MDB2_FETCHMODE_DEFAULT])
|
|
Execute the specified query, fetch the values from the first row of the result set into an array and then frees the result set.
Parameters:
quote [line 2602]
string quote(
string
$value, [string
$type = null], [mixed
$quote = true])
|
|
Convert a text value into a DBMS specific format that is suitable to compose query statements.
Parameters:
quoteIdentifier [line 1571]
string quoteIdentifier(
string
$str, [bool
$check_option = false])
|
|
Quote a string so it can be safely used as a table or column name Delimiting style depends on which database driver is being used. NOTE: just because you CAN use delimited identifiers doesn't mean you SHOULD use them. In general, they end up causing way more problems than they solve. Portability is broken by using the following characters inside delimited identifiers: - backtick (`) -- due to MySQL
- double quote (") -- due to Oracle
- brackets ([ or ]) -- due to Access
Delimited identifiers are known to generally work correctly under the following drivers: - mssql
- mysql
- mysqli
- oci8
- odbc(access)
- odbc(db2)
- pgsql
- sqlite
- sybase
InterBase doesn't seem to be able to use delimited identifiers via PHP 4. They work fine under PHP 5.
Parameters:
raiseError [line 1327]
PEAR_Error &raiseError(
[mixed
$code = null], [int
$mode = null], [mixed
$options = null], [string
$userinfo = null], object a
4)
|
|
This method is used to communicate an error and invoke error callbacks etc. Basically a wrapper for PEAR::raiseError without the message string.
Parameters:
replace [line 2395]
mixed replace(
string
$table, array
$fields)
|
|
Execute a SQL REPLACE query. A REPLACE query is identical to a INSERT query, except that if there is already a row in the table with the same key field values, the REPLACE query just updates its values instead of inserting a new row. The REPLACE type of query does not make part of the SQL standards. Since practically only MySQL and SQLIte implement it natively, this type of query isemulated through this method for other DBMS using standard types of queries inside a transaction to assure the atomicity of the operation.
Parameters:
resetWarnings [line 1371]
rollback [line 1844]
Cancel any database changes done during a transaction that is in progress. This function may only be called when auto-committing is disabled, otherwise it will fail. Therefore, a new transaction is implicitly started after canceling the pending changes.
setDatabase [line 1903]
string setDatabase(
string
$name)
|
|
Select a different database
Parameters:
setDSN [line 1937]
MDB2_OK setDSN(
mixed
$dsn)
|
|
set the DSN
Parameters:
setFetchMode [line 1415]
mixed setFetchMode(
int
$fetchmode, [string
$object_class = 'stdClass'])
|
|
Sets which fetch mode should be used by default on queries on this connection
Parameters:
setLimit [line 2266]
mixed setLimit(
string
$limit, [string
$offset = null])
|
|
set the range of the next query
Parameters:
setOption [line 1445]
mixed setOption(
string
$option, mixed
$value)
|
|
set the option for the db class
Parameters:
standaloneQuery [line 2002]
mixed &standaloneQuery(
string
$query, [mixed
$types = null], [bool
$is_manip = false])
|
|
execute a query as database administrator
Parameters:
subSelect [line 2304]
string subSelect(
string
$query, [string
$type = false])
|
|
simple subselect emulation: leaves the query untouched for all RDBMS that support subselects
Parameters:
supports [line 2673]
bool|string supports(
string
$feature)
|
|
Tell whether a DB implementation or its backend extension supports a given feature.
Parameters:
_doQuery [line 2061]
result &_doQuery(
string
$query, [bool
$is_manip = false], [resource
$connection = null], [string
$database_name = null])
|
|
Execute a query
Parameters:
_fixResultArrayValues [line 1612]
void _fixResultArrayValues(
array
&$array, array
$mode)
|
|
Do all necessary conversions on result arrays to fix DBMS quirks
Parameters:
_modifyQuery [line 2042]
string _modifyQuery(
string
$query, bool
$is_manip, int
$limit, int
$offset)
|
|
Changes a query string for various DBMS specific reasons
Parameters:
_wrapResult [line 2176]
mixed &_wrapResult(
resource
$result, [mixed
$types = array()], [mixed
$result_class = true], [mixed
$result_wrap_class = false], [string
$limit = null], [string
$offset = null])
|
|
wrap a result set into the correct class
Parameters:
__toString [line 1269]
Documentation generated on Mon, 22 May 2006 06:36:11 -0400 by phpDocumentor 1.2.3. PEAR Logo Copyright © PHP Group 2004.
|
|