Jump to navigation Jump to search
Other languages:
English • ‎español • ‎français • ‎polski • ‎中文 • ‎日本語

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.


  • 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)