下記に、いくつかの一般的なトリガーの例と、それぞれの使用方法を示します。
- データの挿入トリガー: データが特定のテーブルに挿入されるときに実行されるトリガーです。以下は、従業員テーブルに新しい行が挿入されたときに、別のテーブルに関連データを自動的に挿入するトリガーの例です。
CREATE TRIGGER insert_employee_trigger
AFTER INSERT ON employees
FOR EACH ROW
BEGIN
INSERT INTO employee_logs (employee_id, action) VALUES (NEW.id, 'Inserted');
END;
- データの更新トリガー: データが特定のテーブルで更新されたときに実行されるトリガーです。以下は、注文テーブルの特定の列が更新されたときに、注文のステータスを自動的に更新するトリガーの例です。
CREATE TRIGGER update_order_trigger
AFTER UPDATE ON orders
FOR EACH ROW
BEGIN
IF NEW.status <> OLD.status THEN
UPDATE order_status SET status = NEW.status WHERE order_id = NEW.id;
END IF;
END;
- データの削除トリガー: データが特定のテーブルから削除されたときに実行されるトリガーです。以下は、商品テーブルから商品が削除されたときに、在庫テーブルの在庫数を自動的に更新するトリガーの例です。
CREATE TRIGGER delete_product_trigger
AFTER DELETE ON products
FOR EACH ROW
BEGIN
UPDATE inventory SET quantity = quantity - OLD.quantity WHERE product_id = OLD.id;
END;
これらは一部の一般的なトリガーの例です。トリガーは、データベースの要件に応じてさまざまな方法で使用することができます。使用例やさらなる情報を求める場合は、データベースの仕様やドキュメントを参照してください。