drupal_uninstall_schema

Versions
6 – 7
drupal_uninstall_schema($module)

Remove all tables that a module defines in its hook_schema().

Note: This function does not pass the module's schema through hook_schema_alter(). The module's tables will be created exactly as the module defines them.

Parameters

$module The module for which the tables will be removed.

Return value

An array of arrays with the following key/value pairs:

  • success: a boolean indicating whether the query succeeded.
  • query: the SQL query(s) executed, passed through check_plain().

Related topics

▾ 6 functions call drupal_uninstall_schema()

drupal_uninstall_modules in includes/install.inc
Calls the uninstall function and updates the system table for a given module.
nodeapi_example_uninstall in developer/examples/nodeapi_example.install
Implementation of hook_uninstall().
node_access_example_uninstall in developer/examples/node_access_example.install
Implementation of hook_uninstall().
node_example_uninstall in developer/examples/node_example.install
Implementation of hook_uninstall().
scaffolding_example_uninstall in developer/examples/scaffolding_example/scaffolding_example.install
Implementation of hook_uninstall().
tracker_uninstall in modules/tracker/tracker.install
Implement hook_uninstall().

Code

includes/common.inc, line 5613

<?php
function drupal_uninstall_schema($module) {
  $schema = drupal_get_schema_unprocessed($module);
  _drupal_schema_initialize($module, $schema);

  foreach ($schema as $table) {
    if (db_table_exists($table['name'])) {
      db_drop_table($table['name']);
    }
  }
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.