MySQL / MariaDB不回滚事务

时间:2019-06-07 17:52:07

标签: mysql mariadb create-table rollback

我正在尝试进行交易,然后回滚。

我的代码如下:

SET autocommit = OFF;
START TRANSACTION;
DROP TABLE IF EXISTS Test;
CREATE TABLE Test (test INT);
ROLLBACK;

但是,即使我调用ROLLBACK,表Test仍将被创建。

表使用InnoDB。我正在使用MariaDB版本10.3.15。

1 个答案:

答案 0 :(得分:3)

https://dev.mysql.com/doc/refman/8.0/en/implicit-commit.html

  

... InnoDB中的CREATE TABLE语句作为单个事务处理。这意味着,来自用户的ROLLBACK不会撤消用户在该事务期间所做的CREATE TABLE语句。