当前位置: 首页 > news >正文

mysql 根据时间字段判断改变数据状态(定时任务)

需求
  • 数据表中有一个时间字段和一个状态字段,如果当前时间超过了表中的时间,就要把这条表记录的状态字段进行更改。

  • 代码定时任务会频繁的调用数据库,不是很好,直接交给数据库来完成。

    1、开启数据库的定时策略

    首先查看数据库的定时策略是否开启
    命令 :

    show variables like 'event_scheduler';
  • event_scheduler 为 OFF 表示并未开启,然后执行开启开启命令
    命令:

    SET GLOBAL event_scheduler = ON;



  • 重新查看定时策略,为ON 表示开启成功

    注意:以上的改法在数据库重启后将会恢复为原来状态,要想数据库重启后也可以让event_scheduler开启,则需要在配置文件my.ini的设置。修改如下,然后重启mysql服务即可。
    需要将配置加入 [mysqld]下

    event_scheduler=ON
  • 2、创建函数

    创建一个函数后将要改的sql放里面,根据自己的业务修改

    update td_lk_report set report_state = 3 where time_of_arrival < NOW() and report_state = 0;

    可以执行函数测试一下

  • 3、创建定时事件

  • 注意:使用这种方案往往会带来一个问题,刚创建的数据的状态是缺失的状态。可以结合触发器,给上初始状态。

  • 完成!!!

http://www.jsqmd.com/news/605674/

相关文章:

  • 2026年水质第三方检测技术分享:检测机构实验室、水质检测、环境第三方检测、肥料检测、食品第三方检测、饲料检测选择指南 - 优质品牌商家
  • 人工智能|大模型——模型——混合专家网络架构详解(MoE)!
  • OpenClaw调用百川2-13B量化模型:低成本自动化内容生成方案
  • 如何用Synonyms实现智能问答系统:面向初学者的完整指南
  • 极简神经网络调参入门(1):单神经元单输入梯度下降调参
  • 编程新手必看:C语言基础全解析
  • update_io_latency:为什么你的IO约束会变成负数?
  • 低成本监控方案:OpenClaw+千问3.5-9B巡检服务器日志
  • kubernetes学习(六)pod控制器
  • Multisim仿真实战:为你的PMOS驱动电路加上‘光耦隔离’,这份保姆级教程和仿真文件请收好
  • HDLbits刷题避坑指南:Q3a FSM里那个容易忽略的计数器细节,你踩雷了吗?
  • SSM学习之使用@ResquestBody注解处理json格式的请求参数
  • RedisDesktopManager-Windows故障排除:解决常见安装与运行问题的完整清单
  • 网络小课堂
  • GitLab 13升14实战:从报错到成功,我的踩坑全记录(附详细解决方案)
  • MacBook安装OpenClaw:M系列芯片运行Kimi-VL-A3B-Thinking优化指南
  • 微信小程序/小游戏:方糖试玩SEO优化全攻略(2026实操版)
  • 终极指南:如何用Le Git Graph为GitHub添加可视化提交历史
  • 2026年CZ型钢技术全解析:工艺、选型与成本管控 - 优质品牌商家
  • OpenClaw语音交互扩展:Qwen3-32B镜像对接本地ASR服务
  • OpenClaw学术研究加速:Qwen3.5-9B文献图表数据提取全攻略
  • 西门子PLC中String与WString的数据存储机制解析
  • Laravel WebSockets 2025年技术路线图:终极发展指南
  • WindowsInternals安全策略分析:SlPolicy工具的高级用法指南
  • 如何利用 SEO 优化平台提高网站排名
  • MeArm机械臂(Arduino)
  • OpenClaw硬件要求解析:千问3.5-27B在不同配置电脑的运行表现
  • so-vits-svc的使用声音克隆
  • OpenClaw配置优化指南:提升Qwen2.5-VL-7B图文任务执行效率30%
  • 如何为LSTM时间序列预测项目编写单元测试:终极完整指南