位置: 编程技术 - 正文

MySQL通过触发器解决数据库中表的行数限制详解及实例

发布时间:2024-02-26

推荐整理分享MySQL通过触发器解决数据库中表的行数限制详解及实例,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

MySQL通过触发器解决数据库中表的行数限制详解及实例

最近项目一个需求是对操作日志的数量限制为万条,超过十万条便删除最旧的那一条,保存数据库中日志数量不超过万。 当时我的第一想法是通过触发器来做,便在数据库中执行了如下的SQL:

看起来似乎没什么问题,对于insert前执行判断,如果数量超过就执行删除。但在真正数据库超过条,也就是开始执行IF语句的时候就出问题,MySQL报错:

查阅资料才知道,MySQL为了防止触发器递归死循环的执行,不允许在某张表的触发器中直接对该表进行DML(SELECT,DELETE,UPDATE,INSERT)操作,当然可以对其他表进行这样操作。

触发器限制的是执行对该表的DML操作。触发器可以在你的执行前后来修改要执行的这一行数据,通过set关键字。

上述语句表示在insert OpetationLog表的之前,更新insert这条数据的action字段值为test,NEW就表示新添加的这条字段,同样的OLD就表示delete时的字段。而在update的时候NEW以及OLD同时都可以使用。

临时触发器

MySQL通过触发器解决数据库中表的行数限制详解及实例

刚刚谈到的触发器(Triggers)是基于某个表所产生的事件触发的,而临时触发器也称为事件调度器是基于特定时间周期触发来执行某些任务。MySQL的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux下的CRON或Windows下的任务计划)只能精 确到每分钟执行一次。对于一些对数据实时性要求比较高的应用(例如:股票、赔率、比分等)就非常适合。

在使用这个功能之前必须确保event_scheduler已开启,可执行

或者

要查看当前是否已开启事件调度器,可执行如下SQL:

而对于本文一开始提到的问题,使用这种机制则可完美解决:

亲测有效

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

deepin 系统下安装mysql数据库的方法步骤 Deepin下载及安装Deepin的下载及安装大家可以参考下面这两篇文章,一篇为正式版的下载与安装,另外一篇文章给大家分享了deepin用U盘安装的方

mysql 搜寻附近N公里内数据的简单实例 根据圆周率和地球半径系数以及搜寻点的经纬度,搜寻数据表中与搜寻点之间的距离为N公里内的数据。1、创建测试表CREATETABLE`location`(`id`int()unsignedNOTN

mysql 查看当前使用的配置文件my.cnf的方法(推荐) my.cnf是mysql启动时加载的配置文件,一般会放在mysql的安装目录中,用户也可以放在其他目录加载。安装mysql后,系统中会有多个my.cnf文件,有些是用于

标签: MySQL通过触发器解决数据库中表的行数限制详解及实例

本文链接地址:https://www.jiuchutong.com/biancheng/349686.html 转载请保留说明!

上一篇:浅谈mysql explain中key_len的计算方法

下一篇:deepin 2014系统下安装mysql数据库的方法步骤

  • 长期待摊费用一般指什么
  • 福利费用属于工资吗
  • 工业企业开票税率
  • 贴现收到的钱计入什么会计科目
  • 银行网银服务费做什么科目
  • 账簿登记的重要内容
  • 临时售楼处要考虑消防吗
  • 银行汇票应计入什么科目
  • 工程项目劳务分包合同范本
  • 以库存现金代垫怎么做账
  • 无形资产研究费用计入成本么
  • 全年亏损,但季度预交企业所得税,汇算时怎么调平
  • 企业账户短信提醒可以用别人手机号吗
  • 营改增后停车费税率
  • 筹建期员工社保分录
  • 预提费用年底必须结转吗
  • 一次性劳务费需要交税吗
  • 1697509479
  • 税务登记证遗失了怎么注销
  • 其他应付款辅助核算怎么挂
  • 免征税收入和不征税收入的区别
  • 企业办税人员是干嘛的
  • 车船使用税进哪个会计科目
  • php编程代码
  • 增值税发票半年后能冲红
  • wedp是什么文件
  • 属于资本的是
  • 工地临时设施搭设原则是什么?
  • 解决烧心最快方法
  • 公允价值变动损益在利润表哪里
  • 境外服务费代扣代缴所得税计算
  • 资产负债表中其他应付款根据什么填列
  • video.js能播放什么格式
  • 【C#+JavaScript+SQL Server】实现Web端考试系统 六:后台管理模块设计(附源码和资源)
  • chat top
  • 材料采购计入哪个账本
  • mysql5.7分区表
  • 未分配利润转增股本要交税吗怎么交
  • 小规模资产负债表怎么填写
  • 简易计税是否可以享受即征即退
  • 织梦栏目页模板
  • 财务会计该如何处理客户以个人账号转款到公司公账?
  • 银行会计的基本核算方法包括的内容有
  • 个税的代扣代缴
  • 门禁卡一般属于什么卡
  • 预付账款和应付账款怎么合并
  • 企业所得税预缴申报表
  • 低值易耗品如何界定
  • 工程项目需要交5000万保证金合理吗
  • 应收账款属于会计分录
  • 分期付款服务费是什么
  • 资产负债表不平衡怎么办
  • 营业外收入如何开票
  • 我国耕地占用税使用的税率为
  • 应收账款平账怎么处理
  • 律师的行业
  • 首先我们先了解一下作者英语怎么说呢
  • 继续教育专项扣除标准是多少
  • 如何设置固定资产的部门对应这就
  • mysql的事务处理
  • 苹果发布会最新消息
  • 如何下载苹果图书
  • 如何在windows中对硬盘进行分区
  • 证书登录什么意思
  • 怎样升级智慧中小学版本软件
  • 系统没有wmi服务选项
  • windows超级管理员默认密码
  • msmpeng.exe是什么程序
  • sharedprem.exe - sharedprem是什么进程 有什么作用
  • /usr/bin/install: 无法创建一般文件‘/usr/local/man/man1/cjpeg.1’: 没有那个文件
  • win10任务栏跳来跳去
  • windows8的ie浏览器在哪
  • 如何设置div自适应宽度
  • mac打开多个窗口
  • ajax简单实例
  • 深入学习习总书记系列讲话精神
  • unity3d初学者教程视频
  • python安装基础教程
  • 广东省电子税务局登录方式
  • 银行存款利息收入现金流量表计入哪
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号