MediaWiki  1.27.2
DatabaseOracle Class Reference
Inheritance diagram for DatabaseOracle:
Collaboration diagram for DatabaseOracle:

Public Member Functions

 __construct (array $p)
 
 __destruct ()
 
 addIdentifierQuotes ($s)
 
 addQuotes ($s)
 Adds quotes and backslashes. More...
 
 affectedRows ()
 Get the number of rows affected by the last write query. More...
 
 aggregateValue ($valuedata, $valuename= 'value')
 Return aggregated value function call. More...
 
 bitAnd ($fieldLeft, $fieldRight)
 
 bitNot ($field)
 
 bitOr ($fieldLeft, $fieldRight)
 
 buildGroupConcatField ($delim, $table, $field, $conds= '', $join_conds=[])
 Build a GROUP_CONCAT or equivalent statement for a query. More...
 
 cascadingDeletes ()
 
 cleanupTriggers ()
 
 dataSeek ($res, $row)
 
 decodeBlob ($b)
 Some DBMSs return a special placeholder object representing blob fields in result objects. More...
 
 delete ($table, $conds, $fname=__METHOD__)
 DELETE query wrapper. More...
 
 dropTable ($tableName, $fName=__METHOD__)
 
 duplicateTableStructure ($oldName, $newName, $temporary=false, $fname=__METHOD__)
 
 encodeBlob ($b)
 Some DBMSs have a special format for inserting into blob fields, they don't allow simple quoted strings to be inserted. More...
 
 execFlags ()
 
 fetchObject ($res)
 
 fetchRow ($res)
 Fetch the next row from the given result object, in associative array form. More...
 
 fieldInfo ($table, $field)
 
 fieldName ($stmt, $n)
 Get a field name in a result object. More...
 
 freeResult ($res)
 Frees resources associated with the LOB descriptor. More...
 
 getDBname ()
 Get the current DB name. More...
 
 getInfinity ()
 Find out when 'infinity' is. More...
 
 getSearchEngine ()
 
 getServer ()
 Get the server hostname or IP address. More...
 
 getServerVersion ()
 
 getSoftwareLink ()
 
 getType ()
 Get the type of the DBMS, as it appears in $wgDBtype. More...
 
 implicitGroupby ()
 Returns true if this database does an implicit sort when doing GROUP BY. More...
 
 implicitOrderby ()
 Returns true if this database does an implicit order by when the column has an index For example: SELECT page_title FROM page LIMIT 1. More...
 
 indexExists ($table, $index, $fname=__METHOD__)
 Query whether a given index exists. More...
 
 indexInfo ($table, $index, $fname=__METHOD__)
 Returns information about an index If errors are explicitly ignored, returns NULL on failure. More...
 
 indexUnique ($table, $index, $fname=__METHOD__)
 
 insert ($table, $a, $fname=__METHOD__, $options=[])
 INSERT wrapper, inserts an array into a table. More...
 
 insertId ()
 This must be called after nextSequenceVal. More...
 
 insertSelect ($destTable, $srcTable, $varMap, $conds, $fname=__METHOD__, $insertOptions=[], $selectOptions=[])
 INSERT SELECT wrapper. More...
 
 isQuotedIdentifier ($s)
 
 lastErrno ()
 Get the last error number. More...
 
 lastError ()
 Get a description of the last error. More...
 
 limitResult ($sql, $limit, $offset=false)
 
 listTables ($prefix=null, $fname=__METHOD__)
 List all tables on the database. More...
 
 makeSelectOptions ($options)
 Returns an optional USE INDEX clause to go after the table, and a string to go at the end of the query. More...
 
 nextSequenceValue ($seqName)
 Return the next in a sequence, save the value for retrieval via insertId() More...
 
 numFields ($res)
 Get the number of fields in a result object. More...
 
 numRows ($res)
 Get the number of rows in a result object. More...
 
 open ($server, $user, $password, $dbName)
 Usually aborts on failure. More...
 
 queryIgnore ($sql, $fname= '')
 
 realTimestamps ()
 
 removeIdentifierQuotes ($s)
 
 searchableIPs ()
 
 selectDB ($db)
 Change the current database. More...
 
 selectRow ($table, $vars, $conds, $fname=__METHOD__, $options=[], $join_conds=[])
 Single row SELECT wrapper. More...
 
 sourceStream ($fp, $lineCallback=false, $resultCallback=false, $fname=__METHOD__, $inputCallback=false)
 defines must comply with ^define\s*([^\s=]*)\s*=\s?'\{\$([^\}]*)\}'; More...
 
 strencode ($s)
 
 strictIPs ()
 
 tableExists ($table, $fname=__METHOD__)
 Query whether a given table exists (in the given schema, or the default mw one if not given) More...
 
 tableName ($name, $format= 'quoted')
 
 tableNameInternal ($name)
 
 textFieldSize ($table, $field)
 Returns the size of a text field, or -1 for "unlimited". More...
 
 timestamp ($ts=0)
 Convert a timestamp in one of the formats accepted by wfTimestamp() to the format used for inserting into timestamp fields in this DBMS. More...
 
 unionQueries ($sqls, $all)
 Construct a UNION query This is used for providing overload point for other DB abstractions not compatible with the MySQL syntax. More...
 
 update ($table, $values, $conds, $fname=__METHOD__, $options=[])
 
 upsert ($table, array $rows, array $uniqueIndexes, array $set, $fname=__METHOD__)
 INSERT ON DUPLICATE KEY UPDATE wrapper, upserts an array into a table. More...
 
 wasDeadlock ()
 Determines if the last failure was due to a deadlock STUB. More...
 
- Public Member Functions inherited from DatabaseBase
 __construct (array $params)
 Constructor. More...
 
 __destruct ()
 Run a few simple sanity checks. More...
 
 __sleep ()
 Called by serialize. More...
 
 __toString ()
 
 addIdentifierQuotes ($s)
 Quotes an identifier using backticks or "double quotes" depending on the database type. More...
 
 addQuotes ($s)
 Adds quotes and backslashes. More...
 
 aggregateValue ($valuedata, $valuename= 'value')
 Return aggregated value alias. More...
 
 anyChar ()
 Returns a token for buildLike() that denotes a '_' to be used in a LIKE query. More...
 
 anyString ()
 Returns a token for buildLike() that denotes a '' to be used in a LIKE query. More...
 
 begin ($fname=__METHOD__)
 Begin a transaction. More...
 
 bitAnd ($fieldLeft, $fieldRight)
 
 bitNot ($field)
 
 bitOr ($fieldLeft, $fieldRight)
 
 bufferResults ($buffer=null)
 Turns buffering of SQL result sets on (true) or off (false). More...
 
 buildConcat ($stringList)
 Build a concatenation list to feed into a SQL query. More...
 
 buildGroupConcatField ($delim, $table, $field, $conds= '', $join_conds=[])
 Build a GROUP_CONCAT or equivalent statement for a query. More...
 
 buildLike ()
 LIKE statement wrapper, receives a variable-length argument list with parts of pattern to match containing either string literals that will be escaped or tokens returned by anyChar() or anyString(). More...
 
 cascadingDeletes ()
 Returns true if this database supports (and uses) cascading deletes. More...
 
 cleanupTriggers ()
 Returns true if this database supports (and uses) triggers (e.g. More...
 
 clearFlag ($flag)
 Clear a flag for this connection. More...
 
 clearViewsCache ()
 Reset the views process cache set by listViews() More...
 
 close ()
 Closes a database connection. More...
 
 commit ($fname=__METHOD__, $flush= '')
 Commits a transaction previously started using begin(). More...
 
 conditional ($cond, $trueVal, $falseVal)
 Returns an SQL expression for a simple conditional. More...
 
 connectionErrorHandler ($errno, $errstr)
 
 dbSchema ($schema=null)
 Get/set the db schema. More...
 
 deadlockLoop ()
 Perform a deadlock-prone transaction. More...
 
 debug ($debug=null)
 Boolean, controls output of large amounts of debug information. More...
 
 decodeBlob ($b)
 Some DBMSs return a special placeholder object representing blob fields in result objects. More...
 
 decodeExpiry ($expiry, $format=TS_MW)
 Decode an expiry time into a DBMS independent format. More...
 
 delete ($table, $conds, $fname=__METHOD__)
 DELETE query wrapper. More...
 
 deleteJoin ($delTable, $joinTable, $delVar, $joinVar, $conds, $fname=__METHOD__)
 DELETE where the condition is a join. More...
 
 doAtomicSection ($fname, $callback)
 Run a callback to do an atomic set of updates for this database. More...
 
 doneWrites ()
 Returns true if the connection may have been used for write queries. More...
 
 dropTable ($tableName, $fName=__METHOD__)
 Delete a table. More...
 
 duplicateTableStructure ($oldName, $newName, $temporary=false, $fname=__METHOD__)
 Creates a new table with structure copied from existing table Note that unlike most database abstraction functions, this function does not automatically append database prefix, because it works at a lower abstraction level. More...
 
 encodeBlob ($b)
 Some DBMSs have a special format for inserting into blob fields, they don't allow simple quoted strings to be inserted. More...
 
 encodeExpiry ($expiry)
 Encode an expiry time into the DBMS dependent format. More...
 
 endAtomic ($fname=__METHOD__)
 Ends an atomic section of SQL statements. More...
 
 estimateRowCount ($table, $vars= '*', $conds= '', $fname=__METHOD__, $options=[])
 Estimate the number of rows in dataset. More...
 
 execute ($prepared, $args=null)
 Execute a prepared query with the various arguments. More...
 
 fieldExists ($table, $field, $fname=__METHOD__)
 Determines whether a field exists in a table. More...
 
 fieldNamesWithAlias ($fields)
 Gets an array of aliased field names. More...
 
 fieldNameWithAlias ($name, $alias=false)
 Get an aliased field name e.g. More...
 
 fillPrepared ($preparedQuery, $args)
 For faking prepared SQL statements on DBs that don't support it directly. More...
 
 freeResult ($res)
 Free a result object returned by query() or select(). More...
 
 functionalIndexes ()
 Returns true if this database can use functional indexes. More...
 
 getApproximateLagStatus ()
 Get a slave lag estimate for this server. More...
 
 getDBname ()
 Get the current DB name. More...
 
 getDelimiter ()
 
 getFlag ($flag)
 Returns a boolean whether the flag $flag is set for this connection. More...
 
 getInfinity ()
 Find out when 'infinity' is. More...
 
 getLag ()
 Get slave lag. More...
 
 getLazyMasterHandle ()
 
 getLBInfo ($name=null)
 Get properties passed down from the server info array of the load balancer. More...
 
 getMasterPos ()
 Get the position of this master. More...
 
 getProperty ($name)
 General read-only accessor. More...
 
 getSchemaPath ()
 Return a path to the DBMS-specific schema file, otherwise default to tables.sql. More...
 
 getScopedLockAndFlush ($lockKey, $fname, $timeout)
 Acquire a named lock, flush any transaction, and return an RAII style unlocker object. More...
 
 getSearchEngine ()
 Get search engine class. More...
 
 getServer ()
 Get the server hostname or IP address. More...
 
 getServerInfo ()
 A string describing the current software version, and possibly other details in a user-friendly way. More...
 
 getServerUptime ()
 Determines how long the server has been up STUB. More...
 
 getSessionLagStatus ()
 Get the slave lag when the current transaction started or a general lag estimate if not transaction is active. More...
 
 getSlavePos ()
 Get the replication position of this slave. More...
 
 getTransactionLagStatus ()
 Get the slave lag when the current transaction started. More...
 
 getUpdateKeysPath ()
 Return a path to the DBMS-specific update key file, otherwise default to update-keys.sql. More...
 
 getWikiID ()
 
 implicitGroupby ()
 Returns true if this database does an implicit sort when doing GROUP BY. More...
 
 implicitOrderby ()
 Returns true if this database does an implicit order by when the column has an index For example: SELECT page_title FROM page LIMIT 1. More...
 
 indexExists ($table, $index, $fname=__METHOD__)
 Determines whether an index exists Usually throws a DBQueryError on failure If errors are explicitly ignored, returns NULL on failure. More...
 
 indexInfo ($table, $index, $fname=__METHOD__)
 Get information about an index into an object. More...
 
 indexUnique ($table, $index)
 Determines if a given index is unique. More...
 
 insert ($table, $a, $fname=__METHOD__, $options=[])
 INSERT wrapper, inserts an array into a table. More...
 
 insertSelect ($destTable, $srcTable, $varMap, $conds, $fname=__METHOD__, $insertOptions=[], $selectOptions=[])
 INSERT SELECT wrapper. More...
 
 isOpen ()
 Is a connection to the database open? More...
 
 isQuotedIdentifier ($name)
 Returns if the given identifier looks quoted or not according to the database convention for quoting identifiers . More...
 
 isReadOnly ()
 
 isView ($name)
 Differentiates between a TABLE and a VIEW. More...
 
 lastDoneWrites ()
 Returns the last time the connection may have been used for write queries. More...
 
 lastQuery ()
 Return the last query that went through IDatabase::query() More...
 
 limitResult ($sql, $limit, $offset=false)
 Construct a LIMIT query with optional offset. More...
 
 listTables ($prefix=null, $fname=__METHOD__)
 List all tables on the database. More...
 
 listViews ($prefix=null, $fname=__METHOD__)
 Lists all the VIEWs in the database. More...
 
 lock ($lockName, $method, $timeout=5)
 Acquire a named lock. More...
 
 lockIsFree ($lockName, $method)
 Check to see if a named lock is available (non-blocking) More...
 
 lockTables ($read, $write, $method, $lowPriority=true)
 Lock specific tables. More...
 
 lowPriorityOption ()
 A string to insert into queries to show that they're low-priority, like MySQL's LOW_PRIORITY. More...
 
 makeGroupByWithHaving ($options)
 Returns an optional GROUP BY with an optional HAVING. More...
 
 makeList ($a, $mode=LIST_COMMA)
 Makes an encoded list of strings from an array. More...
 
 makeOrderBy ($options)
 Returns an optional ORDER BY. More...
 
 makeSelectOptions ($options)
 Returns an optional USE INDEX clause to go after the table, and a string to go at the end of the query. More...
 
 makeWhereFrom2d ($data, $baseKey, $subKey)
 Build a partial where clause from a 2-d array such as used for LinkBatch. More...
 
 masterPosWait (DBMasterPos $pos, $timeout)
 Wait for the slave to catch up to a given master position. More...
 
 maxListLen ()
 Return the maximum number of items allowed in a list, or 0 for unlimited. More...
 
 namedLocksEnqueue ()
 Check to see if a named lock used by lock() use blocking queues. More...
 
 nextSequenceValue ($seqName)
 Returns an appropriately quoted sequence value for inserting a new row. More...
 
 onTransactionIdle ($callback)
 Run an anonymous function as soon as there is no transaction pending. More...
 
 onTransactionPreCommitOrIdle ($callback)
 Run an anonymous function before the current transaction commits or now if there is none. More...
 
 patchPath ($patch)
 Get the full path of a patch file. More...
 
 pendingWriteCallers ()
 Get the list of method names that did write queries for this transaction. More...
 
 pendingWriteQueryDuration ()
 Get the time spend running write queries for this transaction. More...
 
 ping ()
 Ping the server and try to reconnect if it there is no connection. More...
 
 query ($sql, $fname=__METHOD__, $tempIgnore=false)
 Run an SQL query and return the result. More...
 
 realTimestamps ()
 Returns true if this database uses timestamps rather than integers. More...
 
 replace ($table, $uniqueIndexes, $rows, $fname=__METHOD__)
 REPLACE query wrapper. More...
 
 reportConnectionError ($error= 'Unknown error')
 
 reportQueryError ($error, $errno, $sql, $fname, $tempIgnore=false)
 Report a query error. More...
 
 rollback ($fname=__METHOD__, $flush= '')
 Rollback a transaction previously started using begin(). More...
 
 searchableIPs ()
 Returns true if this database can do a native search on IP columns e.g. More...
 
 select ($table, $vars, $conds= '', $fname=__METHOD__, $options=[], $join_conds=[])
 Execute a SELECT query constructed using the various parameters provided. More...
 
 selectDB ($db)
 Change the current database. More...
 
 selectField ($table, $var, $cond= '', $fname=__METHOD__, $options=[])
 A SELECT wrapper which returns a single field from a single result row. More...
 
 selectFieldValues ($table, $var, $cond= '', $fname=__METHOD__, $options=[], $join_conds=[])
 
 selectRow ($table, $vars, $conds, $fname=__METHOD__, $options=[], $join_conds=[])
 Single row SELECT wrapper. More...
 
 selectRowCount ($tables, $vars= '*', $conds= '', $fname=__METHOD__, $options=[], $join_conds=[])
 Get the number of rows in dataset. More...
 
 selectSQLText ($table, $vars, $conds= '', $fname=__METHOD__, $options=[], $join_conds=[])
 The equivalent of IDatabase::select() except that the constructed SQL is returned, instead of being immediately executed. More...
 
 setBigSelects ($value=true)
 Allow or deny "big selects" for this session only. More...
 
 setFileHandle ($fh)
 Set the filehandle to copy write statements to. More...
 
 setFlag ($flag)
 Set a flag for this connection. More...
 
 setLazyMasterHandle (IDatabase $conn)
 Set a lazy-connecting DB handle to the master DB (for replication status purposes) More...
 
 setLBInfo ($name, $value=null)
 Set the LB info array, or a member of it. More...
 
 setSchemaVars ($vars)
 Set variables to be used in sourceFile/sourceStream, in preference to the ones in $GLOBALS. More...
 
 setSessionOptions (array $options)
 Override database's default behavior. More...
 
 setTransactionProfiler (TransactionProfiler $profiler)
 
 sourceFile ($filename, $lineCallback=false, $resultCallback=false, $fname=false, $inputCallback=false)
 Read and execute SQL commands from a file. More...
 
 sourceStream ($fp, $lineCallback=false, $resultCallback=false, $fname=__METHOD__, $inputCallback=false)
 Read and execute commands from an open file handle. More...
 
 startAtomic ($fname=__METHOD__)
 Begin an atomic section of statements. More...
 
 streamStatementEnd (&$sql, &$newLine)
 Called by sourceStream() to check if we've reached a statement end. More...
 
 strencode ($s)
 Wrapper for addslashes() More...
 
 strictIPs ()
 Returns true if this database is strict about what can be put into an IP field. More...
 
 strreplace ($orig, $old, $new)
 Returns a comand for str_replace function in SQL query. More...
 
 tableExists ($table, $fname=__METHOD__)
 Query whether a given table exists. More...
 
 tableName ($name, $format= 'quoted')
 Format a table name ready for use in constructing an SQL query. More...
 
 tableNames ()
 Fetch a number of table names into an array This is handy when you need to construct SQL for joins. More...
 
 tableNamesN ()
 Fetch a number of table names into an zero-indexed numerical array This is handy when you need to construct SQL for joins. More...
 
 tableNamesWithAlias ($tables)
 Gets an array of aliased table names. More...
 
 tableNameWithAlias ($name, $alias=false)
 Get an aliased table name e.g. More...
 
 tablePrefix ($prefix=null)
 Get/set the table prefix. More...
 
 textFieldSize ($table, $field)
 Returns the size of a text field, or -1 for "unlimited". More...
 
 timestamp ($ts=0)
 Convert a timestamp in one of the formats accepted by wfTimestamp() to the format used for inserting into timestamp fields in this DBMS. More...
 
 timestampOrNull ($ts=null)
 Convert a timestamp in one of the formats accepted by wfTimestamp() to the format used for inserting into timestamp fields in this DBMS. More...
 
 trxLevel ()
 Gets the current transaction level. More...
 
 trxTimestamp ()
 Get the UNIX timestamp of the time that the transaction was established. More...
 
 unionQueries ($sqls, $all)
 Construct a UNION query This is used for providing overload point for other DB abstractions not compatible with the MySQL syntax. More...
 
 unionSupportsOrderAndLimit ()
 Returns true if current database backend supports ORDER BY or LIMIT for separate subqueries within the UNION construct. More...
 
 unlock ($lockName, $method)
 Release a lock. More...
 
 unlockTables ($method)
 Unlock specific tables. More...
 
 update ($table, $values, $conds, $fname=__METHOD__, $options=[])
 UPDATE wrapper. More...
 
 upsert ($table, array $rows, array $uniqueIndexes, array $set, $fname=__METHOD__)
 INSERT ON DUPLICATE KEY UPDATE wrapper, upserts an array into a table. More...
 
 useIndexClause ($index)
 USE INDEX clause. More...
 
 wasConnectionError ($errno)
 Determines if the given query error was a connection drop STUB. More...
 
 wasDeadlock ()
 Determines if the last failure was due to a deadlock STUB. More...
 
 wasErrorReissuable ()
 Determines if the last query error was something that should be dealt with by pinging the connection and reissuing the query. More...
 
 wasLockTimeout ()
 Determines if the last failure was due to a lock timeout STUB. More...
 
 wasReadOnlyError ()
 Determines if the last failure was due to the database being read-only. More...
 
 writesOrCallbacksPending ()
 Returns true if there is a transaction open with possible write queries or transaction pre-commit/idle callbacks waiting on it to finish. More...
 
 writesPending ()
 
- Public Member Functions inherited from IDatabase
 selectFieldValues ($table, $var, $cond= '', $fname=__METHOD__, $options=[])
 A SELECT wrapper which returns a list of single field values from result rows. More...
 

Protected Member Functions

 closeConnection ()
 Closes a database connection, if it is open Returns success, true if already closed. More...
 
 doBegin ($fname=__METHOD__)
 
 doCommit ($fname=__METHOD__)
 
 doQuery ($sql)
 
 doRollback ($fname=__METHOD__)
 
- Protected Member Functions inherited from DatabaseBase
 assertOpen ()
 Make sure isOpen() returns true as a sanity check. More...
 
 closeConnection ()
 Closes underlying database connection. More...
 
 doBegin ($fname)
 Issues the BEGIN command to the database server. More...
 
 doCommit ($fname)
 Issues the COMMIT command to the database server. More...
 
 doQuery ($sql)
 The DBMS-dependent part of query() More...
 
 doRollback ($fname)
 Issues the ROLLBACK command to the database server. More...
 
 escapeLikeInternal ($s)
 
 fillPreparedArg ($matches)
 preg_callback func for fillPrepared() The arguments should be in $this->preparedArgs and must not be touched while we're doing this. More...
 
 freePrepared ($prepared)
 Free a prepared query, generated by prepare(). More...
 
 getDefaultSchemaVars ()
 Get schema variables to use if none have been set via setSchemaVars(). More...
 
 getLogContext (array $extras=[])
 Create a log context to pass to wfLogDBError or other logging functions. More...
 
 getReadOnlyReason ()
 
 getSchemaVars ()
 Get schema variables. More...
 
 getTransactionProfiler ()
 
 ignoreErrors ($ignoreErrors=null)
 Turns on (false) or off (true) the automatic generation and sending of a "we're sorry, but there has been a database error" page on database errors. More...
 
 indexName ($index)
 Get the name of an index in a given table. More...
 
 installErrorHandler ()
 
 isTransactableQuery ($sql)
 Determine whether a SQL statement is sensitive to isolation level. More...
 
 isWriteQuery ($sql)
 Determine whether a query writes to the DB. More...
 
 makeInsertOptions ($options)
 Helper for DatabaseBase::insert(). More...
 
 makeUpdateOptions ($options)
 Make UPDATE options for the DatabaseBase::update function. More...
 
 makeUpdateOptionsArray ($options)
 Make UPDATE options array for DatabaseBase::makeUpdateOptions. More...
 
 nativeReplace ($table, $rows, $fname)
 REPLACE query wrapper for MySQL and SQLite, which have a native REPLACE statement. More...
 
 prepare ($sql, $func= 'DatabaseBase::prepare')
 Intended to be compatible with the PEAR::DB wrapper functions. More...
 
 replaceVars ($ins)
 Database independent variable replacement. More...
 
 restoreErrorHandler ()
 
 resultObject ($result)
 Take the result from a query, and wrap it in a ResultWrapper if necessary. More...
 
 runOnTransactionIdleCallbacks ()
 Actually any "on transaction idle" callbacks. More...
 
 runOnTransactionPreCommitCallbacks ()
 Actually any "on transaction pre-commit" callbacks. More...
 
 tableNamesWithUseIndexOrJOIN ($tables, $use_index=[], $join_conds=[])
 Get the aliased table name clause for a FROM clause which might have a JOIN and/or USE INDEX clause. More...
 

Protected Attributes

int $mAffectedRows
 The number of rows affected as an integer. More...
 
resource $mLastResult = null
 
- Protected Attributes inherited from DatabaseBase
string[] $allViews = null
 
 $delimiter = ';'
 
resource $fileHandle = null
 
 $htmlErrors
 
resource $mConn = null
 Database connection. More...
 
 $mDefaultBigSelects = null
 
 $mDoneWrites = false
 
 $mFlags
 
 $mForeign
 
 $mLastQuery = ''
 
 $mLBInfo = []
 
 $mOpened = false
 
 $mPHPError = false
 
 $mSchema
 
 $mSchemaVars = false
 
 $mServer
 
array $mSessionVars = []
 
 $mTablePrefix
 
callable[] $mTrxIdleCallbacks = []
 
int $mTrxLevel = 0
 Either 1 if a transaction is active or 0 otherwise. More...
 
callable[] $mTrxPreCommitCallbacks = []
 
string $mTrxShortId = ''
 Either a short hexidecimal string if a transaction is active or "". More...
 
 $preparedArgs
 
BagOStuff $srvCache
 APC cache. More...
 
TransactionProfiler $trxProfiler
 

Private Member Functions

 fieldBindStatement ($table, $col, &$val, $includeCol=false)
 
 fieldInfoMulti ($table, $field)
 Function translates mysql_fetch_field() functionality on ORACLE. More...
 
 getSequenceData ($table)
 Return sequence_name if table has a sequence. More...
 
 insertOneRow ($table, $row, $fname)
 
 wrapConditionsForWhere ($table, $conds, $parentCol=null)
 
 wrapFieldForWhere ($table, &$col, &$val)
 

Private Attributes

string $defaultCharset = 'AL32UTF8'
 Character set for Oracle database. More...
 
bool $ignoreDupValOnIndex = false
 
array $mFieldInfoCache = []
 
int $mInsertId = null
 
bool array $sequenceData = null
 

Additional Inherited Members

- Static Public Member Functions inherited from DatabaseBase
static factory ($dbType, $p=[])
 Given a DB type, construct the name of the appropriate child class of DatabaseBase. More...
 
static getCacheSetOptions (IDatabase $db1)
 Merge the result of getSessionLagStatus() for several DBs using the most pessimistic values to estimate the lag of any data derived from them in combination. More...
 
- Public Attributes inherited from DatabaseBase
 $mDBname
 
 $mPassword
 
 $mUser
 
const DEADLOCK_DELAY_MAX = 1500000
 Maximum time to wait before retry. More...
 
const DEADLOCK_DELAY_MIN = 500000
 Minimum time to wait before retry, in microseconds. More...
 
const DEADLOCK_TRIES = 4
 Number of times to re-try an operation in case of deadlock. More...
 
- Static Protected Member Functions inherited from DatabaseBase
static generalizeSQL ($sql)
 Removes most variables from an SQL query and replaces them with X or N for numbers. More...
 

Detailed Description

Definition at line 188 of file DatabaseOracle.php.

Constructor & Destructor Documentation

DatabaseOracle::__construct ( array  $p)

Definition at line 210 of file DatabaseOracle.php.

References $wgDBprefix, global, and Hooks\run().

DatabaseOracle::__destruct ( )

Definition at line 221 of file DatabaseOracle.php.

References DatabaseBase\close().

Member Function Documentation

DatabaseOracle::addIdentifierQuotes (   $s)

Definition at line 1272 of file DatabaseOracle.php.

References $s, and DBO_DDLMODE.

DatabaseOracle::addQuotes (   $s)

Adds quotes and backslashes.

Parameters
string | Blob$s
Returns
string

Implements IDatabase.

Definition at line 1263 of file DatabaseOracle.php.

References $s, $wgContLang, and global.

DatabaseOracle::affectedRows ( )

Get the number of rows affected by the last write query.

See also
http://www.php.net/mysql_affected_rows
Returns
int

Implements IDatabase.

Definition at line 525 of file DatabaseOracle.php.

DatabaseOracle::aggregateValue (   $valuedata,
  $valuename = 'value' 
)

Return aggregated value function call.

Parameters
array$valuedata
string$valuename
Returns
mixed

Definition at line 974 of file DatabaseOracle.php.

DatabaseOracle::bitAnd (   $fieldLeft,
  $fieldRight 
)
Parameters
string$fieldLeft
string$fieldRight
Returns
string

Implements IDatabase.

Definition at line 1522 of file DatabaseOracle.php.

DatabaseOracle::bitNot (   $field)
Parameters
string$field
Returns
string

Implements IDatabase.

Definition at line 1517 of file DatabaseOracle.php.

DatabaseOracle::bitOr (   $fieldLeft,
  $fieldRight 
)
Parameters
string$fieldLeft
string$fieldRight
Returns
string

Implements IDatabase.

Definition at line 1526 of file DatabaseOracle.php.

DatabaseOracle::buildGroupConcatField (   $delim,
  $table,
  $field,
  $conds = '',
  $join_conds = [] 
)

Build a GROUP_CONCAT or equivalent statement for a query.

This is useful for combining a field for several rows into a single string. NULL values will not appear in the output, duplicated values will appear, and the resulting delimiter-separated values have no defined sort order. Code using the results may need to use the PHP unique() or sort() methods.

Parameters
string$delimGlue to bind the results together
string | array$tableTable name
string$fieldField name
string | array$condsConditions
string | array$join_condsJoin conditions
Returns
string SQL text
Since
1.23

Implements IDatabase.

Definition at line 1538 of file DatabaseOracle.php.

DatabaseOracle::cascadingDeletes ( )

Definition at line 233 of file DatabaseOracle.php.

DatabaseOracle::cleanupTriggers ( )

Definition at line 237 of file DatabaseOracle.php.

DatabaseOracle::closeConnection ( )
protected

Closes a database connection, if it is open Returns success, true if already closed.

Returns
bool

Definition at line 361 of file DatabaseOracle.php.

DatabaseOracle::dataSeek (   $res,
  $row 
)
Parameters
mixed$res
int$row

Implements IDatabase.

Definition at line 497 of file DatabaseOracle.php.

References $res.

DatabaseOracle::decodeBlob (   $b)

Some DBMSs return a special placeholder object representing blob fields in result objects.

Pass the object through this function to return the original string.

Parameters
string | Blob$b
Returns
string

Implements IDatabase.

Definition at line 894 of file DatabaseOracle.php.

DatabaseOracle::delete (   $table,
  $conds,
  $fname = __METHOD__ 
)

DELETE query wrapper.

Parameters
array$tableTable name
string | array$condsArray of conditions. See $conds in IDatabase::select() for the format. Use $conds == "*" to delete all rows
string$fnameName of the calling function
Exceptions
DBUnexpectedError
Returns
bool|ResultWrapper

Implements IDatabase.

Definition at line 1369 of file DatabaseOracle.php.

References tableName().

DatabaseOracle::doBegin (   $fname = __METHOD__)
protected

Definition at line 1125 of file DatabaseOracle.php.

DatabaseOracle::doCommit (   $fname = __METHOD__)
protected

Definition at line 1130 of file DatabaseOracle.php.

References $ret.

DatabaseOracle::doQuery (   $sql)
protected
DatabaseOracle::doRollback (   $fname = __METHOD__)
protected

Definition at line 1141 of file DatabaseOracle.php.

DatabaseOracle::dropTable (   $tableName,
  $fName = __METHOD__ 
)

Definition at line 954 of file DatabaseOracle.php.

References tableName().

DatabaseOracle::duplicateTableStructure (   $oldName,
  $newName,
  $temporary = false,
  $fname = __METHOD__ 
)

Definition at line 913 of file DatabaseOracle.php.

DatabaseOracle::encodeBlob (   $b)

Some DBMSs have a special format for inserting into blob fields, they don't allow simple quoted strings to be inserted.

To insert into such a field, pass the data through this function before passing it to IDatabase::insert().

Parameters
string$b
Returns
string

Implements IDatabase.

Definition at line 890 of file DatabaseOracle.php.

DatabaseOracle::execFlags ( )

Definition at line 365 of file DatabaseOracle.php.

DatabaseOracle::fetchObject (   $res)
Parameters
ResultWrapper | stdClass$res
Returns
mixed

Implements IDatabase.

Definition at line 449 of file DatabaseOracle.php.

References $res.

DatabaseOracle::fetchRow (   $res)

Fetch the next row from the given result object, in associative array form.

Fields are retrieved with $row['fieldname']. If no more rows are available, false is returned.

Parameters
ResultWrapper$resResult object as returned from IDatabase::query(), etc.
Returns
array|bool
Exceptions
DBUnexpectedErrorThrown if the database returns an error

Implements IDatabase.

Definition at line 457 of file DatabaseOracle.php.

References $res.

DatabaseOracle::fieldBindStatement (   $table,
  $col,
$val,
  $includeCol = false 
)
private

Definition at line 574 of file DatabaseOracle.php.

DatabaseOracle::fieldInfo (   $table,
  $field 
)
Exceptions
DBUnexpectedError
Parameters
string$table
string$field
Returns
ORAField

Implements IDatabase.

Definition at line 1117 of file DatabaseOracle.php.

DatabaseOracle::fieldInfoMulti (   $table,
  $field 
)
private

Function translates mysql_fetch_field() functionality on ORACLE.

Caching is present for reducing query time. For internal calls. Use fieldInfo for normal usage. Returns false if the field doesn't exist

Parameters
array | string$table
string$field
Returns
ORAField|ORAResult

Definition at line 1059 of file DatabaseOracle.php.

References $e, $res, as, and ORAField\tableName().

DatabaseOracle::fieldName (   $res,
  $n 
)

Get a field name in a result object.

See also
http://www.php.net/mysql_field_name
Parameters
mixed$resA SQL result
int$n
Returns
string

Implements IDatabase.

Definition at line 481 of file DatabaseOracle.php.

DatabaseOracle::freeResult (   $res)

Frees resources associated with the LOB descriptor.

Parameters
ResultWrapper | resource$res

Implements IDatabase.

Definition at line 437 of file DatabaseOracle.php.

References $res.

DatabaseOracle::getDBname ( )

Get the current DB name.

Returns
string

Implements IDatabase.

Definition at line 1530 of file DatabaseOracle.php.

DatabaseOracle::getInfinity ( )

Find out when 'infinity' is.

Most DBMSes support this. This is a special keyword for timestamps in PostgreSQL, and works with CHAR(14) as well because "i" sorts after all numbers.

Returns
string

Implements IDatabase.

Definition at line 1550 of file DatabaseOracle.php.

DatabaseOracle::getSearchEngine ( )

Definition at line 1546 of file DatabaseOracle.php.

DatabaseOracle::getSequenceData (   $table)
private

Return sequence_name if table has a sequence.

Parameters
string$table
Returns
bool

Definition at line 841 of file DatabaseOracle.php.

References tableName().

DatabaseOracle::getServer ( )

Get the server hostname or IP address.

Returns
string

Implements IDatabase.

Definition at line 1534 of file DatabaseOracle.php.

DatabaseOracle::getServerVersion ( )
Returns
string Version information from the database

Implements IDatabase.

Definition at line 988 of file DatabaseOracle.php.

DatabaseOracle::getSoftwareLink ( )
Returns
string Wikitext of a link to the server software's web site

Implements IDatabase.

Definition at line 981 of file DatabaseOracle.php.

DatabaseOracle::getType ( )

Get the type of the DBMS, as it appears in $wgDBtype.

Returns
string

Implements IDatabase.

Definition at line 229 of file DatabaseOracle.php.

DatabaseOracle::implicitGroupby ( )

Returns true if this database does an implicit sort when doing GROUP BY.

Returns
bool

Implements IDatabase.

Definition at line 249 of file DatabaseOracle.php.

DatabaseOracle::implicitOrderby ( )

Returns true if this database does an implicit order by when the column has an index For example: SELECT page_title FROM page LIMIT 1.

Returns
bool

Implements IDatabase.

Definition at line 253 of file DatabaseOracle.php.

DatabaseOracle::indexExists (   $table,
  $index,
  $fname = __METHOD__ 
)

Query whether a given index exists.

Parameters
string$table
string$index
string$fname
Returns
bool

Implements IDatabase.

Definition at line 1009 of file DatabaseOracle.php.

References $count, $res, and tableName().

DatabaseOracle::indexInfo (   $table,
  $index,
  $fname = __METHOD__ 
)

Returns information about an index If errors are explicitly ignored, returns NULL on failure.

Parameters
string$table
string$index
string$fname
Returns
bool

Definition at line 537 of file DatabaseOracle.php.

DatabaseOracle::indexUnique (   $table,
  $index,
  $fname = __METHOD__ 
)

Definition at line 541 of file DatabaseOracle.php.

DatabaseOracle::insert (   $table,
  $a,
  $fname = __METHOD__,
  $options = [] 
)

INSERT wrapper, inserts an array into a table.

$a may be either:

  • A single associative array. The array keys are the field names, and the values are the values to insert. The values are treated as data and will be quoted appropriately. If NULL is inserted, this will be converted to a database NULL.
  • An array with numeric keys, holding a list of associative arrays. This causes a multi-row INSERT on DBMSs that support it. The keys in each subarray must be identical to each other, and in the same order.

Usually throws a DBQueryError on failure. If errors are explicitly ignored, returns success.

$options is an array of options, with boolean options encoded as values with numeric keys, in the same style as $options in IDatabase::select(). Supported options are:

  • IGNORE: Boolean: if present, duplicate key errors are ignored, and any rows which cause duplicate key errors are not inserted. It's possible to determine how many rows were successfully inserted using IDatabase::affectedRows().
Parameters
string$tableTable name. This will be passed through DatabaseBase::tableName().
array$aArray of rows to insert
string$fnameCalling function name (use METHOD) for logs/profiling
array$optionsArray of options
Returns
bool

Implements IDatabase.

Definition at line 545 of file DatabaseOracle.php.

References $fname, $options, and as.

DatabaseOracle::insertId ( )

This must be called after nextSequenceVal.

Returns
null|int

Implements IDatabase.

Definition at line 489 of file DatabaseOracle.php.

DatabaseOracle::insertOneRow (   $table,
  $row,
  $fname 
)
private
Parameters
string$table
array$row
string$fname
Returns
bool
Exceptions
DBUnexpectedError

Definition at line 616 of file DatabaseOracle.php.

References $e, $wgContLang, as, global, and tableName().

DatabaseOracle::insertSelect (   $destTable,
  $srcTable,
  $varMap,
  $conds,
  $fname = __METHOD__,
  $insertOptions = [],
  $selectOptions = [] 
)

INSERT SELECT wrapper.

Takes data from a SELECT query and inserts it into another table.

Parameters
string$destTableThe table name to insert into
string | array$srcTableMay be either a table name, or an array of table names to include in a join.
array$varMapMust be an associative array of the form array( 'dest1' => 'source1', ...). Source items may be literals rather than field names, but strings should be quoted with IDatabase::addQuotes()
array$condsCondition array. See $conds in IDatabase::select() for the details of the format of condition arrays. May be "*" to copy the whole table.
string$fnameThe function name of the caller, from METHOD
array$insertOptionsOptions for the INSERT part of the query, see IDatabase::insert() for details.
array$selectOptionsOptions for the SELECT part of the query, see IDatabase::select() for details.
Returns
ResultWrapper

Implements IDatabase.

Definition at line 723 of file DatabaseOracle.php.

References list, and tableName().

DatabaseOracle::isQuotedIdentifier (   $s)

Definition at line 1284 of file DatabaseOracle.php.

References $s.

DatabaseOracle::lastErrno ( )

Get the last error number.

See also
http://www.php.net/mysql_errno
Returns
int

Implements IDatabase.

Definition at line 515 of file DatabaseOracle.php.

References $e.

DatabaseOracle::lastError ( )

Get a description of the last error.

See also
http://www.php.net/mysql_error
Returns
string

Implements IDatabase.

Definition at line 505 of file DatabaseOracle.php.

References $e.

Referenced by open().

DatabaseOracle::limitResult (   $sql,
  $limit,
  $offset = false 
)

Definition at line 882 of file DatabaseOracle.php.

DatabaseOracle::listTables (   $prefix = null,
  $fname = __METHOD__ 
)

List all tables on the database.

Parameters
string$prefixOnly show tables with this prefix, e.g. mw_
string$fnameCalling function name
Exceptions
MWException
Returns
array

Implements IDatabase.

Definition at line 929 of file DatabaseOracle.php.

DatabaseOracle::makeSelectOptions (   $options)

Returns an optional USE INDEX clause to go after the table, and a string to go at the end of the query.

Parameters
array$optionsAn associative array of options to be turned into an SQL query, valid keys are listed in the function.
Returns
array

Definition at line 1337 of file DatabaseOracle.php.

References $key, $options, and as.

DatabaseOracle::nextSequenceValue (   $seqName)

Return the next in a sequence, save the value for retrieval via insertId()

Parameters
string$seqName
Returns
null|int

Implements IDatabase.

Definition at line 827 of file DatabaseOracle.php.

References $res, and query.

DatabaseOracle::numFields (   $res)

Get the number of fields in a result object.

See also
http://www.php.net/mysql_num_fields
Parameters
mixed$resA SQL result
Returns
int

Implements IDatabase.

Definition at line 473 of file DatabaseOracle.php.

References $res.

DatabaseOracle::numRows (   $res)

Get the number of rows in a result object.

Parameters
mixed$resA SQL result
Returns
int

Implements IDatabase.

Definition at line 465 of file DatabaseOracle.php.

References $res.

DatabaseOracle::open (   $server,
  $user,
  $password,
  $dbName 
)

Usually aborts on failure.

Parameters
string$server
string$user
string$password
string$dbName
Exceptions
DBConnectionError
Returns
DatabaseBase|null

Implements IDatabase.

Definition at line 270 of file DatabaseOracle.php.

References DatabaseBase\$mConn, $user, $wgDBOracleDRCP, DatabaseBase\close(), DBO_DEFAULT, DBO_PERSISTENT, DBO_SYSDBA, doQuery(), e, global, is(), lastError(), selectDB(), DatabaseBase\setFlag(), and the.

DatabaseOracle::queryIgnore (   $sql,
  $fname = '' 
)

Definition at line 429 of file DatabaseOracle.php.

References $fname, and query.

DatabaseOracle::realTimestamps ( )

Definition at line 245 of file DatabaseOracle.php.

DatabaseOracle::removeIdentifierQuotes (   $s)

Definition at line 1280 of file DatabaseOracle.php.

References $s.

DatabaseOracle::searchableIPs ( )

Definition at line 257 of file DatabaseOracle.php.

DatabaseOracle::selectDB (   $db)

Change the current database.

Parameters
string$db
Returns
bool Success or failure

Implements IDatabase.

Definition at line 1237 of file DatabaseOracle.php.

References $e, and $success.

Referenced by open().

DatabaseOracle::selectRow (   $table,
  $vars,
  $conds,
  $fname = __METHOD__,
  $options = [],
  $join_conds = [] 
)

Single row SELECT wrapper.

Equivalent to IDatabase::select(), except that a single row object is returned. If the query returns no rows, false is returned.

Parameters
string | array$tableTable name
string | array$varsField names
array$condsConditions
string$fnameCaller function name
string | array$optionsQuery options
array | string$join_condsJoin conditions
Returns
stdClass|bool

Implements IDatabase.

Definition at line 1319 of file DatabaseOracle.php.

References $fname, $options, and $vars.

DatabaseOracle::sourceStream (   $fp,
  $lineCallback = false,
  $resultCallback = false,
  $fname = __METHOD__,
  $inputCallback = false 
)

defines must comply with ^define\s*([^\s=]*)\s*=\s?'\{\$([^\}]*)\}';

Parameters
resource$fp
bool | string$lineCallback
bool | callable$resultCallback
string$fname
bool | callable$inputCallback
Returns
bool|string

Definition at line 1159 of file DatabaseOracle.php.

References $line, $res, and as.

DatabaseOracle::strencode (   $s)

Definition at line 1259 of file DatabaseOracle.php.

References $s.

DatabaseOracle::strictIPs ( )

Definition at line 241 of file DatabaseOracle.php.

DatabaseOracle::tableExists (   $table,
  $fname = __METHOD__ 
)

Query whether a given table exists (in the given schema, or the default mw one if not given)

Parameters
string$table
string$fname
Returns
bool

Implements IDatabase.

Definition at line 1032 of file DatabaseOracle.php.

References $res, and tableName().

DatabaseOracle::tableName (   $name,
  $format = 'quoted' 
)

Definition at line 797 of file DatabaseOracle.php.

References $name.

DatabaseOracle::tableNameInternal (   $name)

Definition at line 815 of file DatabaseOracle.php.

References $name, and tableName().

DatabaseOracle::textFieldSize (   $table,
  $field 
)

Returns the size of a text field, or -1 for "unlimited".

Parameters
string$table
string$field
Returns
mixed

Definition at line 876 of file DatabaseOracle.php.

DatabaseOracle::timestamp (   $ts = 0)

Convert a timestamp in one of the formats accepted by wfTimestamp() to the format used for inserting into timestamp fields in this DBMS.

The result is unquoted, and needs to be passed through addQuotes() before it can be included in raw SQL.

Parameters
string | int$ts
Returns
string

Implements IDatabase.

Definition at line 963 of file DatabaseOracle.php.

References TS_ORACLE, and wfTimestamp().

DatabaseOracle::unionQueries (   $sqls,
  $all 
)

Construct a UNION query This is used for providing overload point for other DB abstractions not compatible with the MySQL syntax.

Parameters
array$sqlsSQL statements to combine
bool$allUse UNION ALL
Returns
string SQL fragment

Implements IDatabase.

Definition at line 902 of file DatabaseOracle.php.

DatabaseOracle::update (   $table,
  $values,
  $conds,
  $fname = __METHOD__,
  $options = [] 
)
Parameters
string$table
array$values
array$conds
string$fname
array$options
Returns
bool
Exceptions
DBUnexpectedError

Implements IDatabase.

Definition at line 1412 of file DatabaseOracle.php.

References $e, $options, $wgContLang, as, global, LIST_AND, and tableName().

DatabaseOracle::upsert (   $table,
array  $rows,
array  $uniqueIndexes,
array  $set,
  $fname = __METHOD__ 
)

INSERT ON DUPLICATE KEY UPDATE wrapper, upserts an array into a table.

This updates any conflicting rows (according to the unique indexes) using the provided SET clause and inserts any remaining (non-conflicted) rows.

$rows may be either:

  • A single associative array. The array keys are the field names, and the values are the values to insert. The values are treated as data and will be quoted appropriately. If NULL is inserted, this will be converted to a database NULL.
  • An array with numeric keys, holding a list of associative arrays. This causes a multi-row INSERT on DBMSs that support it. The keys in each subarray must be identical to each other, and in the same order.

It may be more efficient to leave off unique indexes which are unlikely to collide. However if you do this, you run the risk of encountering errors which wouldn't have occurred in MySQL.

Usually throws a DBQueryError on failure. If errors are explicitly ignored, returns success.

Since
1.22
Parameters
string$tableTable name. This will be passed through DatabaseBase::tableName().
array$rowsA single row or list of rows to insert
array$uniqueIndexesList of single field names or field name tuples
array$setAn array of values to SET. For each array element, the key gives the field name, and the value gives the data to set that field to. The data will be quoted by IDatabase::addQuotes().
string$fnameCalling function name (use METHOD) for logs/profiling
Exceptions
Exception
Returns
bool

Implements IDatabase.

Definition at line 771 of file DatabaseOracle.php.

DatabaseOracle::wasDeadlock ( )

Determines if the last failure was due to a deadlock STUB.

Returns
bool

Implements IDatabase.

Definition at line 909 of file DatabaseOracle.php.

DatabaseOracle::wrapConditionsForWhere (   $table,
  $conds,
  $parentCol = null 
)
private

Definition at line 1301 of file DatabaseOracle.php.

References as.

DatabaseOracle::wrapFieldForWhere (   $table,
$col,
$val 
)
private

Definition at line 1288 of file DatabaseOracle.php.

References $wgContLang, and global.

Member Data Documentation

string DatabaseOracle::$defaultCharset = 'AL32UTF8'
private

Character set for Oracle database.

Definition at line 205 of file DatabaseOracle.php.

bool DatabaseOracle::$ignoreDupValOnIndex = false
private

Definition at line 199 of file DatabaseOracle.php.

int DatabaseOracle::$mAffectedRows
protected

The number of rows affected as an integer.

Definition at line 193 of file DatabaseOracle.php.

array DatabaseOracle::$mFieldInfoCache = []
private

Definition at line 208 of file DatabaseOracle.php.

int DatabaseOracle::$mInsertId = null
private

Definition at line 196 of file DatabaseOracle.php.

resource DatabaseOracle::$mLastResult = null
protected

Definition at line 190 of file DatabaseOracle.php.

bool array DatabaseOracle::$sequenceData = null
private

Definition at line 202 of file DatabaseOracle.php.


The documentation for this class was generated from the following file: