关于数据库event事件调度的问题

a1411473204 2017-03-03 11:06:10
CREATE EVENT e_test
ONSCHEDULE EVERY 7 DAY
DO TRUNCATETABLE test.aaa;
比如我想每周周日执行修改数据表某字段,但是假如今天是星期三,那么七天后就是星期三了,不满足需求了,应该怎么解决啊,求大神帮忙解决下
...全文
106 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
卖水果的net 版主 2017-03-03
  • 打赏
  • 举报
回复
把truncate 放到一个存储过程中,用sql代码判断是否执行清表语句。
Andy-W 2017-03-03
  • 打赏
  • 举报
回复
可以通过job来执行某一个sql语句,这样也维护方便。
Tiger_Zhao 2017-03-03
  • 打赏
  • 举报
回复
这是数据库啊,不是自生自灭的野草,你得保证它能安全持续地运行下去。
a1411473204 2017-03-03
  • 打赏
  • 举报
回复
引用 1 楼 Tiger_Zhao 的回复:
SQL Server 没有这样的语法,搜了一下应该是MySql
CREATE EVENT e_test
    ON SCHEDULE EVERY 7 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 4 DAY --< 4天后(周日)开始第一次执行
    DO TRUNCATETABLE test.aaa;
那要是中途数据库停顿了一下呢?这样写好像有点僵硬,有没有更加灵活点的,不知道event调度有木有and 运算符
Tiger_Zhao 2017-03-03
  • 打赏
  • 举报
回复
SQL Server 没有这样的语法,搜了一下应该是MySql
CREATE EVENT e_test
ON SCHEDULE EVERY 7 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 4 DAY --< 4天后(周日)开始第一次执行
DO TRUNCATETABLE test.aaa;

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧