位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享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数据库的方法步骤

  • 公司购进一台不需要安装的设备设备价款为700万元
  • 工程施工企业收入确认成本结转案例
  • 上个月发票忘记开了怎么办
  • 甲供材料税金如何结算
  • 固定资产折旧摊销表A105080
  • 费用怎么暂估
  • 单位捐赠汽车账务处理要如何做?
  • 大型医用设备维修效益成本分析 课件ppt
  • 公司车辆计提是含税还是不含税?
  • 服务外包合同印花税
  • 车辆维修费
  • 个人转账收入要缴税吗
  • 怎么知道是不是强制执行
  • 国外进口的食品还能吃吗
  • 年报中包括处置资金吗
  • 工资发错了,多发了怎么办
  • 安全生产费用包含哪些
  • 出口茶叶需要什么资质
  • 出租固定资产收取租金
  • qq助手有什么用处
  • uefi+bios
  • 冲销应收账款怎么记账
  • 计提税金及附加的金额如何算
  • 如何清理电脑浏览器
  • 科罗拉多州位置
  • Yii使用migrate命令执行sql语句的方法
  • 坏账损失的会计分录
  • navicat的安装
  • googlelabs
  • Css中的color属性用于设置html元素的背景颜色
  • telnet 执行命令
  • 个税申报结果查询
  • 没有抄报税就申报了怎么办
  • 报建费减免
  • 在pycharm中配置python
  • mongodb性能优化方案有哪些?
  • 计提工资大于发放工资,所得税汇算要调整吗
  • 企业找审计是为了什么
  • 汽车4s店收到保险佣金做账
  • 结构性存款是什么存款
  • 现金支付什么会计科目
  • 单位收风险金违法吗
  • 免税收入就是不征收收入,均属于税收优惠范畴
  • 如何暂估费用会计分录
  • 工资计提少了怎么办
  • 应交税费减免税额在借方还是贷方
  • 注册资本转出可以吗
  • 跨年度固定资产转为在建工程怎么计算
  • 明细账摘要写错了怎么修改
  • mysql5.6怎么用
  • mysql建唯一索引
  • 服务器centos6.8安装教程
  • centos6.5配置网络
  • bios cmos设置
  • pe explorer
  • win7自带的多媒体播放程序是什么
  • 更加有效率
  • 怎样修改linux用户名和密码
  • centos 添加服务
  • lsass.exe在哪个文件夹
  • 查找linux
  • win10用户账户guest
  • 动画时期
  • 小地图的主要作用是观察队友的大概位置
  • linux怎么解压.gz
  • shell(bash)下“time” 命令的输出详解
  • js中断点用法
  • 网页跳转的实现方法
  • 批处理修改hosts 加一行
  • 远程计算机的命令
  • nodejs连接mysql的历程
  • shell批量执行curl
  • javascript入门教程
  • jquery有哪些
  • js制作qq简易聊天框
  • 开票系统怎么设置默认税率
  • 企业自产自销农产品免税政策有哪些
  • 境内银行境外贷款
  • 国家税务总局并入财政部最新消息
  • 纳税信用等级在哪里查
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设