sqlite3 で更新時に更新日時、削除時に連鎖削除のトリガー
sqlite3 で更新時に更新日時、削除時に連鎖削除のトリガーをメモ
▼更新時に updated_at へローカル時刻を保存
- CREATE TRIGGER トリガー名 AFTER UPDATE ON 対象テーブル
- BEGIN
- UPDATE 対象テーブル
- SET updated_at = DATETIME('now', 'localtime')
- WHERE rowid == NEW.rowid;
- END
▼親テーブルのレコード削除時に、親idを持つレコードを連鎖削除
- CREATE TRIGGER トリガー名 AFTER DELETE ON 親テーブル
- FOR EACH ROW
- BEGIN
- DELETE FROM 対象テーブル
- WHERE 連結フィールド = OLD.id;
- END
コメント