《MySQL必知必会》——MySQL管理事务处理

1.Mysql的事务支持:

    并非所有引擎都支持明确的事务处理管理。

 

优点

缺点

MyISAM

访问速度快,对事务完整性没有要求。

不支持事务,不支持外键。

InnoDB

支持ACID事务、行级锁、并发 

写的处理效率差一些,并且会占用更多的磁盘空间以保留数据和索引。

MEMORY

MEMORY类型的表访问非常快

一旦服务器关闭,数据就会丢失掉

2.作用

    事务处理(transaction processing)可以用来维护数据库的完整性,它能保证成批的Mysql操作要么完全执行,要么完全不执行。 

3.几个术语:

    事务(transaction)一组SQL语句。

    回退(rollback)撤销指定SQL语句的过程。

    提交(commit)将未存储的SQL语句结果写入数据库表。

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

4.事务的模型

    a.隐式事务(Implicit Transactions)调用方不需要执行BEGIN TRANSACTION语句来开始事务。数据库引擎执行到SQL语句的时候自动打开事务。调用方需要调用COMMIT或者ROLLBACK。

    b.显式事务(Explicit Transactions)调用方需要调用BEGIN TRANSACTION语句打开事务,需要调用COMMIT或者ROLLBACK来提交或者回滚。

    c.自动事务(Autocommit Transactions)是系统自动默认的,每一条单独的SQL语句(SQL statemenet)都是单独的一个事务,语句执行完毕后自动提交。调用方不需要手工控制事务流程。




参考资料:

《MySQL必知必会》

http://justsee.iteye.com/blog/1062914 《关于MySQL数据库的存储引擎

thomesca(北蔡):http://blog.csdn.net/thomescai (转载请保留) 

你可能感兴趣的:(《MySQL必知必会》——MySQL管理事务处理)