問題一覧に戻る
上級テーブル操作
問題79: TRIGGER - トリガーの作成

データベースイベントに応じて自動実行されるトリガーを作成する方法を学習します。更新時のタイムスタンプ記録、監査ログの作成、データ検証など、自動化処理に活用されます。

-- 更新時刻記録トリガー
CREATE update_timestamp
-- 更新前に実行
UPDATE ON products
FOR EACH ROW
-- タイムスタンプを設定
SET NEW.updated_at = NOW();

-- 監査用トリガー
CREATE TRIGGER audit_orders
-- 挿入後に実行
INSERT ON orders
FOR EACH ROW
INSERT INTO audit_log (table_name, action, user_id, timestamp)
VALUES ('orders', 'INSERT', USER(), NOW());