function db_add_field in Drupal 7
Same name and namespace in other branches
- 8 core/includes/database.inc \db_add_field()
- 6 includes/database.mysql-common.inc \db_add_field()
- 6 includes/database.pgsql.inc \db_add_field()
Adds a new field to a table.
Parameters
$table: Name of the table to be altered.
$field: Name of the field to be added.
$spec: The field specification array, as taken from a schema definition. The specification may also contain the key 'initial'; the newly-created field will be set to the value of the key in all rows. This is most useful for creating NOT NULL columns with no default value in existing tables.
$keys_new: (optional) Keys and indexes specification to be created on the table along with adding the field. The format is the same as a table specification, but without the 'fields' element. If you are adding a type 'serial' field, you MUST specify at least one key or index including it in this array. See db_change_field() for more explanation why.
See also
Related topics
25 calls to db_add_field()
- aggregator_update_7000 in modules/
aggregator/ aggregator.install - Add hash column to aggregator_feed table.
- aggregator_update_7002 in modules/
aggregator/ aggregator.install - Add queued timestamp.
- comment_update_7002 in modules/
comment/ comment.install - Rename {comments} table to {comment} and upgrade it.
- comment_update_7003 in modules/
comment/ comment.install - Split {comment}.timestamp into 'created' and 'changed', improve indexing on {comment}.
- comment_update_7004 in modules/
comment/ comment.install - Upgrade the {node_comment_statistics} table.
File
- includes/
database/ database.inc, line 2966 - Core systems for the database layer.
Code
function db_add_field($table, $field, $spec, $keys_new = array()) {
return Database::getConnection()
->schema()
->addField($table, $field, $spec, $keys_new);
}