【发布时间】:2013-11-23 05:28:18
【问题描述】:
如果mysql命令列表出现任何错误,是否可以自动回滚?
例如:
begin transaction;
insert into myTable values1 ...
insert into myTable values2 ...; -- will throw an error
commit;
现在,在执行时我希望整个事务失败,因此我应该不在 myTable 中看到 values1。 但不幸的是,即使事务有错误,该表也被填充了 values1。
任何想法我如何使它回滚? (再次,有任何错误)?
编辑 - 从 DDL 更改为标准 SQL
【问题讨论】:
-
这是毫无意义的,因为 MySQL 中的事务 do not support DDL
-
感谢您的评论,我编辑了我的原始帖子
-
你考虑过使用处理程序吗? 13.6.7.2. DECLARE ... HANDLER Syntax
标签: mysql transactions rollback