public function DataTable::addUniqueKey in Data 7
Same name and namespace in other branches
- 6 includes/DataTable.inc \DataTable::addUniqueKey()
Add a unique key to a field.
Throws
File
- includes/
DataTable.inc, line 330 - Contains class definition for DataTable.
Class
- DataTable
- Manages data access and manipulation for a single data table. Use data_create_table() or data_get_table() to instantiate an object from this class.
Code
public function addUniqueKey($field) {
$schema = $this->table_schema;
if ($schema['fields'][$field]) {
$index = data_get_index_definition($field, $schema['fields'][$field]);
try {
$success = db_add_unique_key($this->name, $field, $index);
} catch (DatabaseSchemaObjectExistsException $e) {
throw new DataException(t('Error adding unique key.'));
}
if ($success) {
$schema['unique keys'][$field] = array(
$field,
);
$this
->update(array(
'table_schema' => $schema,
));
drupal_get_schema($this->name, TRUE);
return;
}
}
}