SQL Serverには、UPDATE
のデフォルト値を定義する方法がありません。 。
したがって、挿入するためのデフォルト値を持つ列を追加する必要があります:
ADD modstamp DATETIME2 NULL DEFAULT GETDATE()
そして、そのテーブルにトリガーを追加します:
CREATE TRIGGER tgr_modstamp
ON **TABLENAME**
AFTER UPDATE AS
UPDATE **TABLENAME**
SET ModStamp = GETDATE()
WHERE **ID** IN (SELECT DISTINCT **ID** FROM Inserted)
はい、トリガーごとにID列を指定する必要があります。
注意:アプリケーションのコードがわからないテーブルに列を挿入するときは注意してください。アプリに列定義のないINSERTVALUESコマンドがある場合、新しい列のデフォルト値でもエラーが発生します。