Отключение операций INSERT для столбцов значений по умолчанию - SQL Server - PullRequest
0 голосов
/ 27 октября 2011

В Sql Server 2008 у меня есть таблица, которая заполняется приложением поставщика данных.

Я хочу сохранить в таблице столбец " INSERT_DATE ", чтобы я мог знать дату вставки записи.

Для этого я определил ограничение по умолчанию для столбца INSERT_DATE , в котором по умолчанию используется GETDATE ().

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

Итак, как мне отключить вставку в столбец INSERT_DATE ?

(Я не могу использовать вычисляемый столбец. Поскольку кластерный индекс использует поле INSERT_DATE)

Ответы [ 2 ]

0 голосов
/ 27 октября 2011

Возможно, вы не хотите обновлять столбец, когда строка впоследствии обновляется.

Лучше всего использовать trigger. Возможно, вы не сможете выдать ошибку, если приложение предоставляет значение, но, по крайней мере, вы сможете исправить его, пропустив столбец в вставке, указанной в триггере.

0 голосов
/ 27 октября 2011

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

...