MySQL 如何启动新的事务?

MySQL 如何启动新的事务?

通过运行START TRANSACTION命令,用户可以在MySQL中启动新的事务。事务的行为将取决于SQL AUTOCOMMIT模式。默认模式是‘AUTOCOMMIT ON’模式,其中每个MySQL语句都被视为一个完整的事务,并在完成时默认提交。可以通过设置会话变量AUTOCOMMIT为1来启动它,如下所示:

SET AUTOCOMMIT = 1

mysql> SET AUTOCOMMIT = 1;
Query OK, 0 rows affected (0.07 sec)

如果用户想要更改MySQL事务的这种行为,则可以设置‘AUTOCOMMIT OFF’SQL模式,在此模式下,后续的一系列MySQL语句将像事务一样,除非发出显式的COMMIT语句,否则不会提交任何活动。在该模式下,新会话的第一个可执行语句将隐含启动一个新的多语句事务。可以通过将会话变量AUTOCOMMIT设置为0来启动它,如下所示:

SET AUTOCOMMIT = 0

mysql> SET AUTOCOMMIT = 0;
Query OK, 0 rows affected (0.00 sec)

对于InnoDB中的事务,不要使用SET AUTOCOMMIT = 0,而应使用

COMMIT

命令提交。

在两种SQL模式中,事务将通过以下START TRANSACTION命令启动:

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

实际上,以上查询通知MySQL后续语句应被视为单个工作单元,直到事务已结束为止。

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程