MySQL触发器的作用及使用详解
MySQL在5的版本添加了触发器的功能。虽然现在功能还不是非常强大但是还是可以帮忙咱们解决不少问题。
现在咱们就从使用场景以及使用方式来介绍一下MySQL的触发器并且在最后咱们完成一个使用触发器的小实例。
1、什么是触发器
触发器是与表事件相关的由程序(这里我们主要是指的MySQL数据库)在监控到相应的操作(例如:添加一条数据)时激活执行。
在MySQL中咱们可以去监听用户的D ML语句然后可以在执行前或者执行后再去完成我们自己的功能。
2、触发器能做什么
1在添加一条数据前检查数据是否合理例如检查邮件格式是否正确
2 删除数据后将这条数据进行一个备份(类似于回收站)
3 商品买出(订单修改时审核) 把库存表中的数量进行变化
4 记录数据库操作日志(操作前后)
注大家应该可以发现上面的例子都是在表进行变化时让程序自己去完成一些功能。
这里的表进行变化主要指的就是咱们执行insert,update,delete语句时。
3、怎么创建触发器
触发器的语法
语法分析
注意事项
触发器的名称是唯一的千万不要重复。MySQL5中是要求每个表唯一而不是针对整个数据库但是还是建议在整个数据库范围中保证名称唯一。
每个表的每个事件每次都只能创建一次。 比如说我们一个t_e m ployee表中已经创建了一个insert之前的事件就不能再加一次。
4、案例(删除数据库保存删除信息)
第一步准备相应的表
创建员工表
添加数据
效果
创建回收站表
第二步创建触发器
注上面的O L D指的就是当前咱们要删除的表如O L D.ag e就可以拿到咱们刚刚删
除的表中的那一行的数据的a ge列的值。
第三步测试
现在我去删除employee表中的一条数据:
现在我们可以看两张表的数据em ployee表中id为3的数据已经删除
这时候咱们看一下回收站中的数据
刚才咱们的数据就已经保存在新的表中。
5、删除触发器
这里要多说一句咱们自己写代码创建触发器可能会写错而触发器又不能更新或者覆盖。如果要修改触发器只能够先删除触发器然后再重新创建。
语法
案例
弘速云怎么样?弘速云是创建于2021年的品牌,运营该品牌的公司HOSU LIMITED(中文名称弘速科技有限公司)公司成立于2021年国内公司注册于2019年。HOSU LIMITED主要从事出售香港vps、美国VPS、香港独立服务器、香港站群服务器等,目前在售VPS线路有CN2+BGP、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。可联系商家代安装iso系统,目前推出全场vps新开7折,...
近日Friendhosting发布了最新的消息,新上线了美国迈阿密的云产品,之前的夏季优惠活动还在进行中,全场一次性45折优惠,最高可购买半年,超过半年优惠力度就不高了,Friendhosting商家的优势就是100Mbps带宽不限流量,有需要的朋友可以尝试一下。Friendhosting怎么样?Friendhosting服务器好不好?Friendhosting服务器值不值得购买?Friendho...
腾讯云双十一活动已于今天正式开启了,多重优惠享不停,首购服务器低至0.4折,比如1C2G5M轻量应用服务器仅48元/年起,2C4G8M也仅70元/年起;个人及企业用户还可以一键领取3500-7000元满减券,用于支付新购、续费、升级等各项账单;企业用户还可以以首年1年的价格注册.COM域名。活动页面:https://cloud.tencent.com/act/double11我们分享的信息仍然以秒...