使用触发器在 INSERT 命令上更新 MySQL 表?
mysqlmysqli database更新于 2024/2/4 4:47:00
首先我们创建一个表 −
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 ;
使用 insert 命令在表中插入一些记录 −
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)