MediaWiki  master
IMaintainableDatabase.php
Go to the documentation of this file.
1 <?php
2 
24 namespace Wikimedia\Rdbms;
25 
26 use Exception;
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' );
duplicateTableStructure( $oldName, $newName, $temporary=false, $fname=__METHOD__)
Creates a new table with structure copied from existing table.
listViews( $prefix=null, $fname=__METHOD__)
Lists all the VIEWs in the database.
fieldInfo( $table, $field)
mysql_fetch_field() wrapper Returns false if the field doesn&#39;t exist
listTables( $prefix=null, $fname=__METHOD__)
List all tables on the database.
streamStatementEnd(&$sql, &$newLine)
Called by sourceStream() to check if we&#39;ve reached a statement end.
sourceStream( $fp, callable $lineCallback=null, callable $resultCallback=null, $fname=__METHOD__, callable $inputCallback=null)
Read and execute commands from an open file handle.
tableNamesN()
Fetch a number of table names into an zero-indexed numerical array This is handy when you need to con...
deadlockLoop()
Perform a deadlock-prone transaction.
indexUnique( $table, $index)
Determines if a given index is unique.
dropTable( $tableName, $fName=__METHOD__)
Delete a table.
textFieldSize( $table, $field)
Returns the size of a text field, or -1 for "unlimited".
Basic database interface for live and lazy-loaded relation database handles.
Definition: IDatabase.php:38
unlockTables( $method)
Unlock all tables locked via lockTables()
Advanced database interface for IDatabase handles that include maintenance methods.
sourceFile( $filename, callable $lineCallback=null, callable $resultCallback=null, $fname=false, callable $inputCallback=null)
Read and execute SQL commands from a file.
tableLocksHaveTransactionScope()
Checks if table locks acquired by lockTables() are transaction-bound in their scope.
lockTables(array $read, array $write, $method)
Lock specific tables.
tableName( $name, $format='quoted')
Format a table name ready for use in constructing an SQL query.
tableNames()
Fetch a number of table names into an array This is handy when you need to construct SQL for joins...