Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function DatabaseSchema_pgsql::fieldSetDefault

Set the default value for a field.

Parameters

$table: The table to be altered.

$field: The field to be altered.

$default: Default value to be set. NULL for 'default NULL'.

Overrides DatabaseSchema::fieldSetDefault

1 call to DatabaseSchema_pgsql::fieldSetDefault()
DatabaseSchema_pgsql::changeField in includes/database/pgsql/schema.inc
Change a field definition.

File

includes/database/pgsql/schema.inc, line 579

Class

DatabaseSchema_pgsql

Code

public function fieldSetDefault($table, $field, $default) {
 if (!$this->fieldExists ($table, $field)) {
 throw new DatabaseSchemaObjectDoesNotExistException (t ("Cannot set default value of field @table.@field: field doesn't exist.", array(
 '@table' => $table,
 '@field' => $field,
 )));
 }
 if (!isset($default)) {
 $default = 'NULL';
 }
 else {
 $default = is_string ($default) ? "'{$default}'" : $default;
 }
 $this->connection 
 ->query ('ALTER TABLE {' . $table . '} ALTER COLUMN "' . $field . '" SET DEFAULT ' . $default);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.