You are here

function drupal_uninstall_schema in Drupal 8

Same name and namespace in other branches
  1. 6 includes/common.inc \drupal_uninstall_schema()
  2. 7 includes/common.inc \drupal_uninstall_schema()
  3. 9 core/includes/schema.inc \drupal_uninstall_schema()

Removes all tables defined in a module's hook_schema().

Parameters

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

Related topics

1 call to drupal_uninstall_schema()
ModuleInstaller::uninstall in core/lib/Drupal/Core/Extension/ModuleInstaller.php
Uninstalls a given list of modules.

File

core/includes/schema.inc, line 134
Schema API handling functions.

Code

function drupal_uninstall_schema($module) {
  $tables = drupal_get_module_schema($module);
  _drupal_schema_initialize($tables, $module, FALSE);
  $schema = \Drupal::database()
    ->schema();
  foreach ($tables as $table) {
    if ($schema
      ->tableExists($table['name'])) {
      $schema
        ->dropTable($table['name']);
    }
  }
}