function _drupal_schema_initialize

8.x _drupal_schema_initialize(&$schema, $module, $remove_descriptions = TRUE)

Fills in required default values for table definitions from hook_schema().


array $schema: The schema definition array as it was returned by the module's hook_schema().

string $module: The module for which hook_schema() was invoked.

bool $remove_descriptions: (optional) Whether to additionally remove 'description' keys of all tables and fields to improve performance of serialize() and unserialize(). Defaults to TRUE.

Related topics

3 calls to _drupal_schema_initialize()
drupal_get_complete_schema in drupal/core/includes/
Gets the whole database schema.
drupal_install_schema in drupal/core/includes/
Creates all tables defined in a module's hook_schema().
drupal_uninstall_schema in drupal/core/includes/
Removes all tables defined in a module's hook_schema().


drupal/core/includes/, line 302
Schema API handling functions.


function _drupal_schema_initialize(&$schema, $module, $remove_descriptions = TRUE) {
  // Set the name and module key for all tables.
  foreach ($schema as $name => &$table) {
    if (empty($table['module'])) {
      $table['module'] = $module;
    if (!isset($table['name'])) {
      $table['name'] = $name;
    if ($remove_descriptions) {
      foreach ($table['fields'] as &$field) {