Manual:DatabaseUpdater.php

DatabaseUpdater is the class for handling database updates (e.g. adding, modifying, and dropping database tables, fields, and indexes). MysqlUpdater.php, PostgresUpdater.php SqliteUpdater.php, MssqlUpdater.php, and OracleUpdater.php extend this class, and all five of those files (as well as the tables.sql files for the various database types) potentially need to be revised when a core schema change is made. Extensions usually change the schema by means of LoadExtensionSchemaUpdates hook functions. Either way, SQL patch file(s) need to be created.

Functions

 * addExtensionField ($tableName, $columnName, $sqlPath)
 * addExtensionIndex ($tableName, $indexName, $sqlPath)
 * addExtensionTable ($tableName, $sqlPath)
 * addExtensionUpdate (array $update)
 * addPostDatabaseUpdateMaintenance ($class)
 * dropExtensionField ($tableName, $columnName, $sqlPath)
 * dropExtensionIndex ($tableName, $indexName, $sqlPath)
 * dropExtensionTable ($tableName, $sqlPath)
 * dropTable ($table, $patch=false, $fullpath=false)
 * getDB
 * modifyExtensionField ($tableName, $fieldName, $sqlPath)
 * modifyField ($table, $field, $patch, $fullpath=false)