使用触发器在 INSERT 命令中更新 MySQL 表?
首先让我们创建一个表 -
mysql> create table DemoTable1 -> ( -> Id int, -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.52 sec)
以下是如何创建第二个表的查询 -
mysql> create table DemoTable2 -> ( -> EmployeeId int, -> EmployeeName varchar(20) -> ); Query OK, 0 rows affected (0.51 sec)
现在让我们创建一个触发器来更新使用插入命令的 MySQL 表 -
mysql> DELIMITER // mysql> CREATE TRIGGER updateDemoOnInsert -> AFTER INSERT ON DemoTable2 -> FOR EACH ROW BEGIN -> insert into DemoTable1 values(110,'Adam'); -> END -> // Query OK, 0 rows affected (0.14 sec) mysql> DELIMITER ;
使用插入命令在表中插入一些记录 -
mysql> insert into DemoTable2 values(101,'Mike'); Query OK, 1 row affected (0.22 sec)
使用 select 语句显示第二个表中的所有记录 -
mysql> select * from DemoTable2;
这将生成以下输出 -
+------------+--------------+ | EmployeeId | EmployeeName | +------------+--------------+ | 101 | Mike | +------------+--------------+ 1 row in set (0.00 sec)
使用 select 语句显示第一个表中的所有记录 -
mysql> select * from DemoTable1;
这将生成以下输出 -
+------+-----------+ | Id | FirstName | +------+-----------+ | 110 | Adam | +------+-----------+ 1 row in set (0.00 sec)
广告