Mysql 触发器 trigger 是针对数据库操作语句DML而言的,严格上来说,SQL语句是分为DQL和DML的,有些地方把这两者都划到了一起,但是如果区别来看,理解触发器trigger则更简单。
举例:
1 登录某个系统后,如果修改相应的账户信息,则自动发一个确认信息通知用户本人防止恶意操作。
2 注册用户的时候自动发一个激活邮件到对方的邮箱,当对方点击邮件则激活该账户。
3 商城购买东西一件东西之后,那么商品数量自动减一。
根据例子分析:上面我们可以利用Mysql定义一个触发器,触发器可以再一个操作之前或者之后执行。
DML语句:
insert
delete
update
Mysql的触发器是在版本5之后开始支持的,当然目前而言除非特别老的项目,我估计也没有使用Mysql5.0之下的了。
Mysql只有表才支持触发器,视图并不支持,它不是真实的表。
Drop trigger xxxName;//删除触发器
一次定义终身使用,如果想要更改触发器的内容,则必须删除再重新创建。
按照每个表 每个事件 每次 定义触发器。
之前 before
之后 after
因此一个表最多可以定义6个触发器。
一个触发器只能对应一个事件。
本文出自 “攻城狮” 博客,转载请与作者联系!
原文:http://crazyzxl.blog.51cto.com/8781147/1709597