mysql中的trigger
来源:互联网 发布:java邮箱验证 编辑:程序博客网 时间:2024/06/04 17:53
mysql中trigger的语法跟procedure和function类似。
1 创建
CREATE [DEFINER = { user | CURRENT_USER }] TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_body trigger_time: { BEFORE | AFTER } trigger_event: { INSERT | UPDATE | DELETE }
具体操作中也和function类似,例如:
mysql> delimiter // mysql> CREATE TRIGGER upd_check BEFORE UPDATE ON account -> FOR EACH ROW -> BEGIN -> IF NEW.amount < 0 THEN -> SET NEW.amount = 0; -> ELSEIF NEW.amount > 100 THEN -> SET NEW.amount = 100; -> END IF; -> END;// mysql> delimiter ;
若只有一句trigger语句,则begin...end复合句式可以不用,如:
mysql> CREATE TRIGGER ins_sum BEFORE INSERT ON account -> FOR EACH ROW SET @sum = @sum + NEW.amount;
不同的地方是:
a trigger不能用call来调用
b trigger的语句中不能有事务的开启和结束,如 START TRANSACTION, COMMIT, or ROLLBACK等等。
2 查看trigger
SHOW TRIGGERS [{FROM | IN} db_name][LIKE 'pattern' | WHERE expr] 或者从information_schema.TRIGGERS中查看 SELECT * FROM INFORMATION_SCHEMA.TRIGGERSWHERE condition;
3 删除
DROP TRIGGER [IF EXISTS] [schema_name.]trigger_name
阅读全文
0 0
- mysql中的trigger
- mysql trigger
- mysql trigger
- mysql trigger
- mysql trigger
- mysql trigger
- Mysql Trigger
- MySQL TRIGGER
- MySQL TRIGGER
- mysql create trigger
- mysql insert trigger
- 【转】mysql-trigger-触发器
- TRIGGER:Mysql触发器
- mysql之触发器trigger
- MYSQL触发器(Trigger)
- mysql 之触发器 trigger
- mysql之触发器trigger
- MySQL触发器 trigger学习
- mysql中的索引
- poj-2979-陪审团的人选-C语言-动态规划
- Android与YunOs的区别
- mysql中的日志
- mysql中的过程和函数
- mysql中的trigger
- C++中几个特殊运算符的重载(= 、++、--、下标运算符的重载)
- mysql中的view(虚拟表)
- mysql中的事件计划(event scheduler)
- mysql的python API
- 安装scrapy
- ubuntu怎么进入单用户模式
- python ORM 模块peewee(一): 建立数据库对象
- python ORM 模块peewee(二): 数据库使用的基本流程