- •Лекция 11. Стандартные значения, правила, пользовательскте типы данных. Стандартные значения
- •Создание и прикрепление стандартных значений
- •Удаление стандартных значений
- •Правила
- •Создание и прикрепление правил
- •Пример 1. Создание правила на диапазон значений
- •Создание определяемых пользователем типов базы данных
- •Переименование пользовательского типа
- •Удаление определенного пользователем типа данных
- •Значения объектов и их описание
Лекция 11. Стандартные значения, правила, пользовательскте типы данных. Стандартные значения
Стандартные значения – объекты БД, предназначенные для автоматического присвоения значения столбцу таблицы при вставке новой строки, если для этого столбца не было указано явное конкретное значение. Стандартное значение также может быть связано с пользовательским типом данных.
Стандартные значения, созданные как самостоятельные объекты БД, могут быть приктеплены к неограниченному количеству столбцов. Кроме этого, можно создавать стандартное значение при создании столбца таблицы. Если требуется удалить столбец, к которому прикреплено стандартное значение, сначала необходимо открепить его от столбца.
Когда определение DEFAULT добавляется к существующему в таблице столбцу, по умолчанию Database Engine использует это определение лишь для новых добавляемых в таблицу данных. Существующие данные, которые вносились во время действия предыдущего определения DEFAULT, остаются без изменений. Однако при добавлении нового столбца к существующей таблице, можно указать, чтобы вместо значения NULL Database Engine поместил значение по умолчанию (указанное в определении DEFAULT) в новый столбец во всех существующих в таблице строках.
После удаления определения DEFAULT Database Engine будет помещать в соответствующий столбец добавляемых строк значение NULL, а не значение по умолчанию, когда при вставке значение столбца не указано. Однако уже находящиеся в таблице данные не изменяются.
Создание и прикрепление стандартных значений
Создание объектов, называемых стандартными значения выполняется командой CREATE DEFAULT. Синтаксис команды приведен ниже:
CREATE DEFAULT default AS constant_expression,
где default – имя стандартного значения. Заданные по умолчанию имена должны соответствовать правилам для идентификаторов. Определение имени владельца стандартного значения необязательно;
constant_expression – выражение, которое содержит только постоянные значения (оно не может включать имена любых столбцов или других объектов базы данных). Любая постоянная, встроенная функция, или математическое выражение может использоваться. Включайте символ или дату в единственные кавычки (‘); денежно-кредитные, целочисленные, и с плавающей точкой константы не требуют кавычек. Двоичным данным должен предшествовать 0x, денежно-кредитным данным должен предшествовать долларовый признак ($). Стандартное значение должно быть совместимо с типом данных столбца.
Стандартное значение определяет значение, которое будет вставлено в столбец, к которому привязан объект (или во все столбцы, в случае определяемого пользователем типа данных) когда никакое значение не явно снабжено в течение вставки.
Стандартное значение - привилегированный, стандартный способ ограничить данные столбца.
Прикрепление стандартного значения:
sp_bindefault <имя стандартного значения>, <имя объекта, к которому прикрепляется стандартное значение>
Открепление стандартного значения:
sp_unbindefault <имя стандартного значения>, <имя объекта, к которому прикрепляется стандартное значение>
CREATE DEFAULT Adress_default AS 'unknown'
/* Привязка к столбцу таблицы */
Sp_bindefault Adress_default,’tbl_chitateli.adress’