问答详情
源自:3-1 MySQL-在数据库中立唯一序列号的常用方法

事务回滚没起作用

create table t(id  int auto_increment not null ,primary key (id)); select * from t insert into t VALUE(),(); begin; insert into t values(); rollback; 创建表,插入1,2 ,查询t表,开启事务,插入3,事务回滚,插入4,查询,数据变成了,1,2,3,4了。为什么?

提问者:xmmmou 2019-09-20 10:30

个回答

  • 坐不住的雨伞
    2020-07-23 18:09:47

    事务的回滚对于拥有自增主键的表来说,insert的数据是被删除,update和delete的数据是被恢复


  • 锅火
    2019-12-06 11:09:17

    ...select * from t insert into t...之间没有分号分开两个语句,执行会出错;

    改了之后查询是没有问题的,然后你贴出来的这几句并没有包含插入id为4的操作,故而最后结果为1,2