mysql数据库如何增加触发器
要增加触发器,可使用以下语法:
```mysql
CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON table_name
FOR EACH ROW
BEGIN
-- 触发器履行的逻辑代码
END;
```
其中,`trigger_name`是触发器的名称,`BEFORE`或`AFTER`表示触发器的履行时间,`INSERT`、`UPDATE`或`DELETE`表示触发器的事件类型,`table_name`是触发器所属的表名。
在`BEGIN`和`END`之间编写触发器履行的逻辑代码。
以下是一个示例,创建一个在`orders`表上的`AFTER INSERT`触发器,每次插入新记录时自动更新`orders_count`表中的定单数量:
```mysql
CREATE TRIGGER update_orders_count
AFTER INSERT ON orders
FOR EACH ROW
BEGIN
UPDATE orders_count SET count = count + 1;
END;
```
注意:
- 触发器一定要在数据库中的表上创建,只能在表级别使用。
- 触发器可以在`BEFORE`或`AFTER`事件之前或以后履行。
- 触发器可以在`INSERT`、`UPDATE`或`DELETE`事件产生时履行。
- `FOR EACH ROW`表示触发器针对每行记录履行。
- 触发器内部可使用`OLD`和`NEW`关键字援用旧值和新值。
- 触发器可以包括各种SQL语句和流程控制语句。
- 使用`DROP TRIGGER trigger_name`语句可以删除触发器。
TOP