mysql触发器

Posted ayanboke

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql触发器相关的知识,希望对你有一定的参考价值。

创建商品表:

Database changed
mysql> create table goods(
-> gid int(10),
-> name varchar(20),
-> num smallint
-> );
Query OK, 0 rows affected (0.02 sec)

创建订单表:

mysql> create table ord(
-> ord int(10),
-> gid int(10),
-> mch smallint,
-> );

插入测试数据:

insert into goods values(1,‘cat‘,34),(2,‘dog‘,65),(3,‘pig‘,21);

mysql> select * from goods;
+------+------+------+
| gid | name | num |
+------+------+------+
| 1 | cat | 34 |
| 2 | dog | 65 |
| 3 | pig | 21 |
+------+------+------+

创建触发器:

//修改mysql的结束符号为$,因为select语句要用分号

delimiter $

mysql> create trigger t1 after insert on ord for each
-> row begin update goods set num = num-2 where gid = 1;
-> end $
Query OK, 0 rows affected (0.02 sec)

查看触发器:

mysql> show triggers;
-> $

现在操作ord数据添加的时候,goods表的数据会跟着减少了

以上是关于mysql触发器的主要内容,如果未能解决你的问题,请参考以下文章

怎么在Dbeaver中创建mysql 触发器

请教mysql中触发器的写法

mysql触发器使日期相加减?

mysql添加触发器后无法插入数据的问题

MySQL触发器

猎八哥浅谈MYSQL触发器