diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/common.inc | 4 | ||||
-rw-r--r-- | includes/database.inc | 8 | ||||
-rw-r--r-- | includes/database.mysql-common.inc | 14 | ||||
-rw-r--r-- | includes/database.pgsql.inc | 22 |
4 files changed, 27 insertions, 21 deletions
diff --git a/includes/common.inc b/includes/common.inc index f1cb4cfc5..a8e6a7da6 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -3300,8 +3300,8 @@ function drupal_install_schema($module) { _drupal_initialize_schema($module, $schema); $ret = array(); - foreach ($schema as $table) { - db_create_table($ret, $table); + foreach ($schema as $name => $table) { + db_create_table($ret, $name, $table); } } diff --git a/includes/database.inc b/includes/database.inc index 12a529a1c..593a4f329 100644 --- a/includes/database.inc +++ b/includes/database.inc @@ -401,11 +401,13 @@ function db_escape_table($string) { * * @param $ret * Array to which query results will be added. + * @param $name + * The name of the table to create. * @param $table - * A valid and processed table schema definition array. + * A Schema API table definition array. */ -function db_create_table(&$ret, $table) { - $statements = db_create_table_sql($table); +function db_create_table(&$ret, $name, $table) { + $statements = db_create_table_sql($name, $table); foreach ($statements as $statement) { $ret[] = update_sql($statement); } diff --git a/includes/database.mysql-common.inc b/includes/database.mysql-common.inc index 99fde133e..982176640 100644 --- a/includes/database.mysql-common.inc +++ b/includes/database.mysql-common.inc @@ -49,24 +49,26 @@ function db_query($query) { } /** - * Generate SQL to create a new table from a Drupal schema definition. + * Generate SQL to create a new table from a Drupal schema definition. * + * @param $name + * The name of the table to create. * @param $table - * A valid Drupal table definition array. + * A Schema API table definition array. * @return * An array of SQL statements to create the table. */ -function db_create_table_sql($table) { +function db_create_table_sql($name, $table) { if (empty($table['mysql_suffix'])) { $table['mysql_suffix'] = "/*!40100 DEFAULT CHARACTER SET UTF8 */"; } - $sql = "CREATE TABLE {". $table['name'] ."} (\n"; + $sql = "CREATE TABLE {". $name ."} (\n"; // Add the SQL statement for each field. - foreach ($table['fields'] as $name => $field) { - $sql .= _db_create_field_sql($name, _db_process_field($field)) .", \n"; + foreach ($table['fields'] as $field_name => $field) { + $sql .= _db_create_field_sql($field_name, _db_process_field($field)) .", \n"; } // Process keys & indexes. diff --git a/includes/database.pgsql.inc b/includes/database.pgsql.inc index 399a72178..b29983c48 100644 --- a/includes/database.pgsql.inc +++ b/includes/database.pgsql.inc @@ -513,17 +513,19 @@ function db_type_map() { } /** - * Generate SQL to create a new table from a Drupal schema definition. + * Generate SQL to create a new table from a Drupal schema definition. * + * @param $name + * The name of the table to create. * @param $table - * A valid Drupal table definition array. + * A Schema API table definition array. * @return * An array of SQL statements to create the table. */ -function db_create_table_sql($table) { +function db_create_table_sql($name, $table) { $sql_fields = array(); - foreach ($table['fields'] as $name => $field) { - $sql_fields[] = _db_create_field_sql($name, _db_process_field($field)); + foreach ($table['fields'] as $field_name => $field) { + $sql_fields[] = _db_create_field_sql($field_name, _db_process_field($field)); } $sql_keys = array(); @@ -531,12 +533,12 @@ function db_create_table_sql($table) { $sql_keys[] = 'PRIMARY KEY ('. implode(', ', $table['primary key']) .')'; } if (isset($table['unique keys']) && is_array($table['unique keys'])) { - foreach ($table['unique keys'] as $keyname => $key) { - $sql_keys[] = 'CONSTRAINT {'. $table['name'] .'}_'. $keyname .'_key UNIQUE ('. implode(', ', $key) .')'; + foreach ($table['unique keys'] as $key_name => $key) { + $sql_keys[] = 'CONSTRAINT {'. $name .'}_'. $key_name .'_key UNIQUE ('. implode(', ', $key) .')'; } } - $sql = "CREATE TABLE {". $table['name'] ."} (\n\t"; + $sql = "CREATE TABLE {". $name ."} (\n\t"; $sql .= implode(",\n\t", $sql_fields); if (count($sql_keys) > 0) { $sql .= ",\n\t"; @@ -546,8 +548,8 @@ function db_create_table_sql($table) { $statements[] = $sql; if (isset($table['indexes']) && is_array($table['indexes'])) { - foreach ($table['indexes'] as $keyname => $key) { - $statements[] = _db_create_index_sql($table['name'], $keyname, $key); + foreach ($table['indexes'] as $key_name => $key) { + $statements[] = _db_create_index_sql($name, $key_name, $key); } } |