Поделиться через


Значения по умолчанию

Значения по умолчанию определяют, какими значениями заполнять столбец, если при вставке строки для этого столбца значение не указано. Значение по умолчанию могут быть любым выражением, результат которого — константа, например собственно константой, встроенной функцией или математическим выражением.

Чтобы использовать значения по умолчанию, создайте их определения с помощью ключевого слова DEFAULT инструкции CREATE TABLE. При этом константное выражение будет присвоено столбцу как значение по умолчанию. Дополнительные сведения см. в разделе Изменение и создание определений DEFAULT.

В следующем примере создается таблица, в которой используются различные типы выражений по умолчанию. Здесь объект по умолчанию, назначенный столбцу, создается и связывается со столбцом. Затем производится тестовая вставка данных без указания значений для столбцов со значениями по умолчанию, а также выборка этой тестовой строки для проверки того, что были использованы все значения по умолчанию.

USE AdventureWorks;
GO
CREATE TABLE test_defaults
   (keycol      smallint,
   process_id   smallint DEFAULT @@SPID,   --Preferred default definition
   date_ins   datetime DEFAULT getdate(),   --Preferred default definition
   mathcol      smallint DEFAULT 10 * 2,   --Preferred default definition
   char1      char(3),
   char2      char(3) DEFAULT 'xyz') --Preferred default definition;
GO
/* For illustration only, use DEFAULT definitions instead.*/
CREATE DEFAULT abc_const AS 'abc';
GO
sp_bindefault abc_const, 'test_defaults.char1';
GO
INSERT INTO test_defaults(keycol) VALUES (1);
GO
SELECT * FROM test_defaults;
GO

Ниже приводится результирующий набор.

Default bound to column.

(1 row(s) affected)

keycol process_id date_ins                    mathcol char1 char2 
------ ---------- --------------------------- ------- ----- ----- 
1      7          Oct 16 1997  8:34PM         20      abc   xyz   

(1 row(s) affected)

См. также

Справочник

Основные понятия