19-04【mysql】transaction,autocommit

本地使用mysql测试结果如下,

没有使用start transaction的情况下:

  • 如果set autocommit=1,则每一条语句默认提交;
  • 如果set autocommit=0,则这条语句默认不提交,要提交必须使用commit才行;

有start transaction的情况下:

set autocommit=1:

  • 如果最后使用了rollback,则事务回滚;
  • 如果最后使用了commit,则事务执行;
  • 如果最后没有使用rollback也没有使用commit,而是退出了,则事务回滚;

set autocommit=0:

  • 如果最后使用了rollback,则事务回滚;
  • 如果最后使用了commit,则事务执行;
  • 如果最后没有使用rollback,也没有使用commit,而是退出了,则事务回滚;

附:

mysql官方文档:https://dev.mysql.com/doc/refman/8.0/en/innodb-autocommit-commit-rollback.html

11

原文地址:https://www.cnblogs.com/helww/p/10566285.html