mysql source 文件,里面的transaction不起作用的原因?


在mysql命令行source执行一个外部文件:


 source file.sql;

或者这种方式:


 mysql -uuser -ppassword -P 3306 database_name < file.sql

file.sql 里面的schema是:


 begin;
delete from table1;
insert into table1 values(1,'name');
-- commit;

如果在命令行单独执行这些schema,再运行rollback就会正常回滚,而source这种方式却不能回滚,这是为什么呢?

transaction mysql

Seeiya 10 years, 3 months ago

试了一下, source中rollback完全可以. mysql 5.5.24

无口无心无表情 answered 10 years, 3 months ago

Your Answer