Mysql 事务处理
来源:互联网 发布:软件代理商名录 编辑:程序博客网 时间:2024/06/07 18:30
1.存储引擎
mysql 功能可以分为两个部分,外部主要完成与客户端的连接以及对SQL进行事前检查,而内部就是所谓的存储引擎部分,他负责接收外层的数据操作指示,完成实际的数据输入输出以及文件操作工作。工作模式如图所示
MySQL提供的引擎种类如下:
其中我们常用的也就是前两种:在这里对各种引擎不赘述,自行百度各种的不同值得注意的是查看引起以及修改引擎的语句:
查看引擎:show create table xxx 可以查看正在使用的引擎
修改引擎:alter table xxx ENGINE = "Innodb/myisam"
2。事务
事务,我理解的就是两种状态,全部成功和全部失败两种状态。使用事物的时候设计到三个重要的命令,BEGIN,COMMIT ,ROLLBACK
下面先总结一个简单的例子。来说明事物的作用。
自动提交(这个做了半天实验,如果有不对的地方,请大家多多指正)
前提为:数据库引擎为INNODB
自动提交有两种状态,一种是ON 一种是OFF ,
可以使用语句:select @@autocommit 来查看当前使用的自动提交模式
当set_autocommit 处于OFF状态的时候,则用户操作一直处于事务的状态之中,只有遇到commit 的时候才能写入。这个过程可以不加begin ,但是此时rollback 为最初的状态,加上begin的时候rollback 到begin的状态。如果操作之后不执行commit命令,所有的更新内容将不反应的数据库中。
而当commit处于ON的时候,使用事务必须添加BEGIN 。当rollback 的时候会到事物开始的地方。
3部分回滚
部分回滚的示例图如下所示:
举个简单的例子来说明:
结果如下:
4事务处理的利用范围
一下几条SQL命令,执行后被自动提交,实在事务处理,可以利用的范围之外的。(不支持事务的)
A drop database B drop table C drop D alter table
参考资料:
《mysql 高效编程》 -- 人民邮电出版社
PS:个人认为 这本书写的不太好。需要着重讲的点没有讲或一带而过,不推荐阅读。个人建议仅供参考。
- mysql事务处理
- mysql事务处理
- mysql事务处理
- MySQL事务处理
- mysql 事务处理
- mysql 事务处理
- mysql事务处理
- MySQL事务处理
- mysql事务处理
- mysql 事务处理
- MYSQL--事务处理
- MYSQL--事务处理
- MySQL事务处理
- MYSQL--事务处理
- mysql 事务处理
- MYSQL-事务处理
- MYSQL--事务处理
- MYSQL-- 事务处理
- hdu 5126 stars cdq分治
- ViewPager实现TabHost动态添加、删除Fragment,用红色小圆球指示当前页面
- JDBC : Java获取数据库连接(Driver And DriverManager)
- NuGet 的基本语法
- IO-04. 混合类型数据格式化输入(5)
- Mysql 事务处理
- TRACE宏的功能
- SpringMVC数据验证
- iOS摄像头和相册-UIImagePickerController
- CSS中position的妙用
- java编程思想易错点三
- Intent传递非基本类型的值
- # Android中Activity四种启动模式和taskAffinity属性详解 #(5)原创分享
- hibernate.hbm2ddl.auto=update