MySQL トリガーを作成する
MySQLで、トリガーを作成する手順を記述してます。
環境
- OS ubuntu21.10
- MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
手順
トリガーを作成するには、「CREATE TRIGGER」を使用します。
CREATE TRIGGER トリガー名;
実際に、「tbl1」が更新されたら以下の「tbl2」というテーブルにデータをinsertするトリガーを作成します。
CREATE TABLE `tbl2`
(`id` int NOT NULL AUTO_INCREMENT
,`name` varchar(10) DEFAULT NULL
,`create_at` DATETIME NOT NULL
,PRIMARY KEY (`id`))
ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4
トリガーを作成する。
DROP TRIGGER IF EXISTS hoge;
delimiter //
CREATE TRIGGER hoge
AFTER UPDATE ON tbl1
FOR EACH ROW
BEGIN
INSERT INTO tbl2(name,create_at) values('UPDATE',now());
END;
//
実際に「tbl1」を更新してみます。
UPDATE `tbl1` SET `age` = '50' WHERE (`id` = '5');
更新されると「tbl2」も更新されます。
-
前の記事
MySQL オートインクリメント値(AUTO_INCREMENT)を初期化する 2022.01.20
-
次の記事
mongoDB オブジェクトの配列に条件を指定して抽出する 2022.01.20
コメントを書く