利用Navicat快速写触发器(mysql数据库)

本文介绍如何使用MySQL触发器简化数据库操作,特别是在多个表间维护数据一致性时。通过实例展示,当对主表进行插入操作时,如何自动在相关联表中插入对应数据,减少代码复杂度,提高开发效率。

定义:**触发器(trigger)**是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。

语法,使用触发程序,作用

这两天做项目用到了触发器。具体问题是一个表a可能有好几个其他的表(表b,表c,表d…)进行关联,当在a表中需要添加新的内容时,在数据库中找到与它关联的(表b,表c,表d…),当表a的新增一套数据,关联的表b,表c,表d…各自也要新增一条对应的数据。想一想,后台代码可以实现------当通过前端对表a进行编辑(做新增操作,插入后找到与表a有关联的表,遍历关联表进行依次插入。(由于经常写,所以想换个简单的方式实现。)采用了mysql数据库自带的触发器功能。简单实用,几行数据库代码就轻易实现,就是在后期维护可能麻烦一点,但对于已定的基本功能的话,还是很推荐实用的。(同学说代码维护更容易点。。。)
下面进入操作阶段。

  1. 打开Navicat preminu (我的版本是12),可能界面会有所不同,但大体操作一样。
    展开对应数据库的表,(图一)选中将要添加触发器的表,点击右键,选择设计表,可看到右边框显示对应表的设置(图二)

  2. 先选择触发器,给触发器起个名称。触发时机,为BEFORE 或者AFTER。再在后面操作进行选择。

  3. 选择完后再下面框(4)进行定义。你要实现的功能代码谢在这里(由于项目数据库保密原因,就放别人写的了),我推荐看一下这篇博客–ysql触发器应用之向另一个表新增数据(因为有定义,if判断语句,也很简洁,可以根据自己的实际需求改编使用) 链接–传送门.

  4. 最后点击保存。

    图一
    图二

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值