function DatabaseSchema_pgsql::fieldSetDefault

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.