MediaWiki  1.28.0
Database

This file deals with database interface functions and query specifics/optimisations. More...

Files

file  ChronologyProtector.php
 Generator of database load balancing objects.
 
file  CloneDatabase.php
 Helper class for making a copy of the database, mostly for unit testing.
 
file  Database.php
 
file  DatabaseDomain.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DatabaseMssql.php
 This is the MS SQL Server Native database abstraction layer.
 
file  DatabaseMysql.php
 This is the MySQL database abstraction layer.
 
file  DatabaseMysqlBase.php
 This is the MySQL database abstraction layer.
 
file  DatabaseMysqli.php
 This is the MySQLi database abstraction layer.
 
file  DatabaseOracle.php
 This is the Oracle database abstraction layer.
 
file  DatabasePostgres.php
 This is the Postgres database abstraction layer.
 
file  DatabaseSqlite.php
 This is the SQLite database abstraction layer.
 
file  DBAccessBase.php
 Base class for objects that allow access to other wiki's databases using the foreign database access mechanism implemented by LBFactoryMulti.
 
file  DBAccessError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBAccessObjectUtils.php
 This file contains database access object related constants.
 
file  DBConnectionError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBExpectedError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBQueryError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBReadOnlyError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBReplicationWaitError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBTransactionError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBTransactionSizeError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  DBUnexpectedError.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  IDatabase.php
 
file  IDBAccessObject.php
 This file contains database access object related constants.
 
file  ILBFactory.php
 Generator and manager of database load balancing objects.
 
file  ILoadBalancer.php
 Database load balancing interface.
 
file  ILoadMonitor.php
 Database load monitoring interface.
 
file  IMaintainableDatabase.php
 This file deals with database interface functions and query specifics/optimisations.
 
file  LBFactory.php
 Generator and manager of database load balancing objects.
 
file  LBFactoryMulti.php
 Advanced generator of database load balancing objects for database farms.
 
file  LBFactorySimple.php
 Generator of database load balancing objects.
 
file  LBFactorySingle.php
 Simple generator of database connections that always returns the same object.
 
file  LoadBalancer.php
 Database load balancing manager.
 
file  LoadBalancerSingle.php
 Simple generator of database connections that always returns the same object.
 
file  LoadMonitor.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  LoadMonitorMySQL.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  LoadMonitorNull.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 
file  MWLBFactory.php
 Generator of database load balancing objects.
 
file  SavepointPostgres.php
 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
 

Classes

class  Blob
 Utility classThis allows us to distinguish a blob from a normal string and an array of strings. More...
 
class  Database
 Relational database abstraction object. More...
 
class  DatabaseMssql
 
class  DatabaseMysql
 Database abstraction object for PHP extension mysql. More...
 
class  DatabaseMysqlBase
 Database abstraction object for MySQL. More...
 
class  DatabaseMysqli
 Database abstraction object for PHP extension mysqli. More...
 
class  DatabaseOracle
 
class  DatabasePostgres
 
class  DatabaseSqlite
 
class  DBAccessError
 Exception class for attempted DB access. More...
 
class  DBConnectionError
 
class  DBConnRef
 Helper class to handle automatically marking connections as reusable (via RAII pattern) as well handling deferring the actual network connection until the handle is used. More...
 
class  DBError
 Database error base class. More...
 
class  DBExpectedError
 Base class for the more common types of database errors. More...
 
class  DBQueryError
 
class  DBReadOnlyError
 
class  DBReplicationWaitError
 Exception class for replica DB wait timeouts. More...
 
class  DBTransactionError
 
class  DBTransactionSizeError
 
class  DBUnexpectedError
 
interface  Field
 Base for all database-specific classes representing information about database fields. More...
 
interface  IDatabase
 Basic database interface for live and lazy-loaded relation database handles. More...
 
interface  ILBFactory
 An interface for generating database load balancers. More...
 
interface  ILoadBalancer
 Database cluster connection, tracking, load balancing, and transaction manager interface. More...
 
interface  ILoadMonitor
 An interface for database load monitoring. More...
 
interface  IMaintainableDatabase
 Advanced database interface for IDatabase handles that include maintenance methods. More...
 
class  LBFactory
 An interface for generating database load balancers. More...
 
class  LBFactoryMulti
 A multi-database, multi-master factory for Wikimedia and similar installations. More...
 
class  LoadBalancer
 Database connection, tracking, load balancing, and transaction manager for a cluster. More...
 
class  LoadMonitor
 Basic DB load monitor with no external dependencies Uses memcached to cache the replication lag for a short time. More...
 
class  LoadMonitorMySQL
 Basic MySQL load monitor with no external dependencies Uses memcached to cache the replication lag for a short time. More...
 
class  MWLBFactory
 MediaWiki-specific class for generating database load balancers. More...
 
class  ORAResult
 The oci8 extension is fairly weak and doesn't support oci_num_rows, among other things. More...
 
class  ResultWrapper
 Result wrapper for grabbing data queried from an IDatabase object. More...
 
class  SavepointPostgres
 Manage savepoints within a transaction. More...
 

Detailed Description

This file deals with database interface functions and query specifics/optimisations.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. http://www.gnu.org/copyleft/gpl.html