并非所有的MySQL引擎都支持事务处理 ,在MYSQL中InnoDB引擎支持事务处理 ,而MyIASM引擎不支持明确的事务处理
管理。
使用ROLLBACK
SELECT * FROM ordertotals;
START TRANSACTION;
DELETE FROM ordertotals;
SELECT * FROM ordertotals;
ROLLBACK;
SELECT * FROM ordertotals;
需要注意的是事务处理用来管理INSERT 、UPDATE和DELETE语句。不能回退SELECT语句。也不能回退CREATE 和DROP操作。
使用COMMIT语句:
START TRANSACTION;
DELETE FROM orderitems WHERE order_num=20010;
DELETE FROM orders WHERE order_num=20010;
COMMIT;//语句中隐含了事物关闭
使用保留点:SAVEPOINT delete1; ROLLBACK TO delete1;
释放保留点。保留点可以是事务处理完成之后自动释放,也可以是RELEASE SAVEPOINT明确地释放保留点。
更改默认的提交行为
SET autocommit=0;//此标志是针对每个连接的而不是服务器的。