You are here

function update_fix_system_table in Drupal 4

Same name and namespace in other branches
  1. 5 update.php \update_fix_system_table()
1 call to update_fix_system_table()
update.php in ./update.php
Administrative page for handling updates from one Drupal version to another.

File

./update.php, line 561
Administrative page for handling updates from one Drupal version to another.

Code

function update_fix_system_table() {
  drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
  $row = db_fetch_object(db_query_range('SELECT * FROM {system}', 0, 1));
  if (!isset($row->weight)) {
    $ret = array();
    switch ($GLOBALS['db_type']) {
      case 'pgsql':
        db_add_column($ret, 'system', 'weight', 'smallint', array(
          'not null' => TRUE,
          'default' => 0,
        ));
        $ret[] = update_sql('CREATE INDEX {system}_weight_idx ON {system} (weight)');
        break;
      case 'mysql':
      case 'mysqli':
        $ret[] = update_sql("ALTER TABLE {system} ADD weight tinyint(2) default '0' NOT NULL, ADD KEY (weight)");
        break;
    }
  }
}