twitter facebook

[SQLServer]データ更新したら日時も自動更新

SQLServerでデータ更新時に自動で日時のカラムも更新したい場合
MySQL でいう DEFAULT_GENERATED ON UPDATE CURRENT_TIMESTAMP
をしたい場合は、以下のトリガーを作成することで実現できます。
テーブル名やカラム名は以下とします
テーブル名
tbl
トリガー名
new_trigger
更新するカラム名
col_time
主キー
col_pri
作成する場合 CREATE TRIGGER
CREATE TRIGGER new_trigger
ON tbl
AFTER UPDATE
AS
BEGIN
	UPDATE tbl SET col_time = GETDATE() 
	WHERE col_pri IN (SELECT col_pri FROM inserted)
END
変更する場合 ALTER TRIGGER
ALTER TRIGGER new_trigger
ON tbl
AFTER UPDATE
AS
BEGIN
	UPDATE tbl SET col_time = GETDATE() 
	WHERE col_pri IN (SELECT col_pri FROM inserted)
END
AUTHOR
@えのえの
最終更新日 2023/06/03
FAVORITE good stock
LINK TAG
記法を見る