【问题标题】:Is it possible to rollback a CREATE EVENT in MySQL?是否可以在 MySQL 中回滚 CREATE EVENT?
【发布时间】:2015-04-03 03:54:32
【问题描述】:

我的事务的 sql 语句如下所示:

  1. START TRANSACTION 开始事务
  2. TEST表中创建记录
  3. CREATE EVENT 启动一个mysql 事件,使用该记录的ID。
  4. 更新TEST_2
  5. 使用COMMIT 提交事务

当然,如果它失败了,我会做一个ROLLBACK,但经过测试,我注意到新创建的EVENT 并没有回滚到不存在。 然后我发现CREATE EVENT触发了一个隐含的COMMIT,在这里https://docs.oracle.com/cd/E17952_01/refman-5.1-en/implicit-commit.html

那么,有什么方法可以使事件回滚过程自动化吗?或者以某种方式使其在事务失败时回滚事件?

谢谢。

【问题讨论】:

    标签: mysql events transactions rollback


    【解决方案1】:

    触发器可以完成这项工作吗?触发器旨在响应数据库中发生的特定事件而执行。 Oracle Trigger reference

    【讨论】:

    • 就像创建一个触发 CREATE 事件的触发器,如果​​在 CREATE EVENT 事件的 ID 没有匹配的记录(因为回滚),删除该事件?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-16
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多