mysql 必知必会 (26管理事务处理)之把书读薄

MyISAM:不支持明确的事务处理管理

InnoDB:支持事务处理

 

事务处理:维护数据库完整性,保证数据库不包含不完整的操作结果

无错误:整组语句提交数据库

发生错误:回退以恢复数据库到某个已知且安全的状态

 

数据库故障:比如超出磁盘空间、安全限制、表锁

 

名词解释:

事务(transaction ):一组sql语句

回退(rollback):撤销指定的sql语句的过程

提交(commit):指将未存储的sql语句结果写入数据表

保留点(savepoint):指事务处理中设置的临时占位符(place-holder),可以对它发布回退。

 

使用事务:

事务开始:

START TRANSACTION;

....sql....语句

ROLLBACK;

ROLLBACK:只能在START TRANSACTION命令之后

 

事务处理用来管理:INSERT  UPDATE  DELETE语句。

 

使用COMMIT:

隐含提交:一般的msyql语句都是直接对数据库进行操作(自动进行)

事务处理块中,不会隐含进行提交。

 

START TRANSACTION;

.....Sql语句....

COMMIT;

 

隐含事务关闭:当COMMIT或ROLLBACK语句执行后,事务会自动关闭。(保留点也会被释放, mysql5中也可以用release savepoint来明确的释放保留点)

 

使用保留点(SAVEPOINT): 设置临时占位符

 

SAVEPOINT delete1

 

ROLLBACK TO  delete1

 

更改默认提交行为:

Autocommit 标志决定是否自动提交更改

Autocommit 设置为0, mysql不自动提交(commit也不行)直到autocommit=1才行

SET autocommit = 0

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值