14.6.3 Grouping DML Operations with Transactions 组DML操作

时间:2023-03-09 13:19:33
14.6.3 Grouping DML Operations with Transactions  组DML操作
14.6.3 Grouping DML Operations with Transactions  组DML操作

默认情况下,连接到MySQL server 开始是以启动自动提交模式,

会自动提交每条SQL语句  当你执行它的时候。

这种操作的模式可能会陌生 如果你有其他的数据库经验,

它是标准的执行一个顺序的DML语句,然后提交它们或者全部回滚它们

使用多个事务, 关闭自动提交使用SQL语句 SET autocommit = 0  结束每个事务使用COMMIT

或者 ROLLBACK 。

离开自动提交, 开启每个事务使用START TRANSACTION 结束每个事务使用COMMIT或者ROLLBACK

下面的例子显示2个事务,第一个提交,第2个回滚

事务在客户端语言:

API 比如PHP,Perl DBI,JDBC,ODBC 或者其他标准C库,

你可以发送事务控制语句比如COMMIT 给MySQL server 作为字符串像其他的SQL语句比如SELECT 

或者INSERT ,

一些API 也提供单独特别的事务提交或者回滚方法。