1
服务器版本:5.7.17 MySQL社区服务器(GPL)MySQL在创建表时失败时创建事务提交表
这是我的情况。 我有两张桌子。现在
CREATE TABLE a (id INT PRIMARY KEY);
CREATE TABLE b (id INT PRIMARY KEY);
,我做我的交易:
START TRANSACTION;
INSERT INTO `a` VALUE (1);
CREATE TABLE b (id INT PRIMARY KEY);
当然我希望这句话3(CRATE TABLE 'B')会因为表已经存在失败。它确实如此。这个问题,它的确也插入为好,这不应该在我跑
COMMIT;
没有办法回滚事务 - 记录“1”表中地点“A”的住宿环境。
你有什么想法或想法如何避免这种行为?我也注意到,当我故意在CREATE TABLE STATEMENT中执行语法错误时,它会像预期的那样失败,但是不会创建'a'中的记录。
感谢您的参考和解释。 您是否知道在执行期间锁定数据库以保持一致性的任何方式? – Alexey
添加链接到https://stackoverflow.com/questions/16221993/how-to-prevent-mysql-implicit-commit可能有帮助。 – swa66