MySQLでのストアドプロシージャとトリガーの基本

2024/07/14
x-logoline-logo

MySQLでのストアドプロシージャとトリガーの基本

2024/07/14
x-logoline-logo
PR

今回はMySQLでよく使われるストアドプロシージャトリガーについて、解説します。

ストアドプロシージャとは?

ストアドプロシージャとは、一連のSQLの処理をまとめてひとつの関数のように使えるものです。例えば、複数のテーブルへの操作をまとめて行いたい場合に便利です。

ストアドプロシージャの基本的な作り方

ストアドプロシージャは以下のように作成します:


DELIMITER //

CREATE PROCEDURE sample_procedure()
BEGIN
  -- ここにSQL文を書きます
  SELECT * FROM sample_table;
END //

DELIMITER ;

トリガーとは?

トリガーとは、特定のテーブルに対してINSERT、UPDATE、DELETEなどの操作が行われたとき、自動的に実行されるSQLのセットです。例えば、データの変更を記録したい場合に便利です。

トリガーの基本的な作り方

トリガーは以下のように作成します:


CREATE TRIGGER sample_trigger
AFTER INSERT ON sample_table
FOR EACH ROW
BEGIN
  -- ここにSQL文を書きます
  INSERT INTO log_table (log_data) VALUES (NEW.data);
END;

まとめ

ストアドプロシージャとトリガーは、MySQLを効率よく使いこなすための重要な機能です。ストアドプロシージャは複数の処理をまとめて実行できるので、手間が省けます。トリガーは特定の操作に自動的に反応するので、データの一貫性を保つのに役立ちます。

この記事はAIを使用して作成されています。
PR