事务的用法

1 存储引擎

1).概念

	  想想张马虎与李小心的列子就懂了!

	  create table account(id int, name varchar(10), money int)

	  engine = innodb charset = utf8;

2.常用的表的引擎

	+-----------+----------+--------+
	|  特点     |  Myisam  |InnoDB  |        
	+-----------+----------+--------+
	|批量插入速度|||          
	+-----------+----------+--------+
	|  事务安全  |         |  支持  |         
	+-----------+----------+--------+
	|  全文索引  |    支持 |   支持 |          
	+-----------+----------+--------+
	|   锁机制   |   表锁  |  行锁  |         
	+-----------+----------+--------+

	Myisam,批量插入速度快,不支持事务,锁表。

	Innodb,批量插入相对较慢,支持事务,锁行。

	全文索引,目前5.5的版本myisam,innodb都已经支持

2 事务

1.概念

	通俗的说事务:指一组操作,要么都成功执行,要么都不执行-->原子性

	在所有的操作没有执行完毕之前,其他会话不能够看到中间改变的过程-->隔离性

	事务发生前,和发生后,数据的总额依然匹配-->一致性

	当事务完成后,其影响应该保留下来,不能够撤销-->持久性

	如果出了错误事务也不允许撤销,只能通过“补偿性事务”

2.关于事务的引擎

	选用innodb

3.操作

	开启事务:start transaction;

	Sql...

	Sql...

	Commit 提交

	rollback 回滚

	注意:当一个事务commit,或者rollback就结束了!

		 还有一些语句会造成事务的隐式的提交,比如start transaction

事务的基本原理示意图:
事务的基本原理示意图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值