MediaWiki  1.34.0
IMaintainableDatabase.php
Go to the documentation of this file.
1 <?php
2 
24 namespace Wikimedia\Rdbms;
25 
26 use Exception;
27 use RuntimeException;
28 
38 interface IMaintainableDatabase extends IDatabase {
58  public function tableName( $name, $format = 'quoted' );
59 
71  public function tableNames();
72 
84  public function tableNamesN();
85 
93  public function textFieldSize( $table, $field );
94 
111  public function sourceFile(
112  $filename,
113  callable $lineCallback = null,
114  callable $resultCallback = null,
115  $fname = false,
116  callable $inputCallback = null
117  );
118 
132  public function sourceStream(
133  $fp,
134  callable $lineCallback = null,
135  callable $resultCallback = null,
136  $fname = __METHOD__,
137  callable $inputCallback = null
138  );
139 
147  public function streamStatementEnd( &$sql, &$newLine );
148 
155  public function dropTable( $tableName, $fName = __METHOD__ );
156 
181  public function deadlockLoop();
182 
191  public function listViews( $prefix = null, $fname = __METHOD__ );
192 
208  public function duplicateTableStructure(
209  $oldName, $newName, $temporary = false, $fname = __METHOD__
210  );
211 
223  public function tableLocksHaveTransactionScope();
224 
265  public function lockTables( array $read, array $write, $method );
266 
277  public function unlockTables( $method );
278 
287  public function listTables( $prefix = null, $fname = __METHOD__ );
288 
297  public function indexUnique( $table, $index );
298 
308  public function fieldInfo( $table, $field );
309 }
310 
311 class_alias( IMaintainableDatabase::class, 'IMaintainableDatabase' );
Wikimedia\Rdbms\IMaintainableDatabase\lockTables
lockTables(array $read, array $write, $method)
Lock specific tables.
Wikimedia\Rdbms
Definition: ChronologyProtector.php:24
Wikimedia\Rdbms\IMaintainableDatabase\listViews
listViews( $prefix=null, $fname=__METHOD__)
Lists all the VIEWs in the database.
Wikimedia\Rdbms\IMaintainableDatabase\tableName
tableName( $name, $format='quoted')
Format a table name ready for use in constructing an SQL query.
Wikimedia\Rdbms\IMaintainableDatabase\tableNames
tableNames()
Fetch a number of table names into an array This is handy when you need to construct SQL for joins.
Wikimedia\Rdbms\IDatabase
Basic database interface for live and lazy-loaded relation database handles.
Definition: IDatabase.php:38
Wikimedia\Rdbms\IMaintainableDatabase\sourceStream
sourceStream( $fp, callable $lineCallback=null, callable $resultCallback=null, $fname=__METHOD__, callable $inputCallback=null)
Read and execute commands from an open file handle.
Wikimedia\Rdbms\IMaintainableDatabase\deadlockLoop
deadlockLoop()
Perform a deadlock-prone transaction.
Wikimedia\Rdbms\IMaintainableDatabase\tableNamesN
tableNamesN()
Fetch a number of table names into an zero-indexed numerical array This is handy when you need to con...
Wikimedia\Rdbms\IMaintainableDatabase\indexUnique
indexUnique( $table, $index)
Determines if a given index is unique.
Wikimedia\Rdbms\IMaintainableDatabase\sourceFile
sourceFile( $filename, callable $lineCallback=null, callable $resultCallback=null, $fname=false, callable $inputCallback=null)
Read and execute SQL commands from a file.
Wikimedia\Rdbms\IMaintainableDatabase\unlockTables
unlockTables( $method)
Unlock all tables locked via lockTables()
Wikimedia\Rdbms\IMaintainableDatabase\tableLocksHaveTransactionScope
tableLocksHaveTransactionScope()
Checks if table locks acquired by lockTables() are transaction-bound in their scope.
Wikimedia\Rdbms\IMaintainableDatabase\dropTable
dropTable( $tableName, $fName=__METHOD__)
Delete a table.
Wikimedia\Rdbms\IMaintainableDatabase\textFieldSize
textFieldSize( $table, $field)
Returns the size of a text field, or -1 for "unlimited".
Wikimedia\Rdbms\IMaintainableDatabase\duplicateTableStructure
duplicateTableStructure( $oldName, $newName, $temporary=false, $fname=__METHOD__)
Creates a new table with structure copied from existing table.
Wikimedia\Rdbms\IMaintainableDatabase\fieldInfo
fieldInfo( $table, $field)
mysql_fetch_field() wrapper Returns false if the field doesn't exist
Wikimedia\Rdbms\IMaintainableDatabase\streamStatementEnd
streamStatementEnd(&$sql, &$newLine)
Called by sourceStream() to check if we've reached a statement end.
Wikimedia\Rdbms\IMaintainableDatabase
Advanced database interface for IDatabase handles that include maintenance methods.
Definition: IMaintainableDatabase.php:38
Wikimedia\Rdbms\IMaintainableDatabase\listTables
listTables( $prefix=null, $fname=__METHOD__)
List all tables on the database.