mysql 事务处理,事务操作,JDBC中事务的使用,事务的sql语句,
来源:互联网 发布:淘宝热卖棉服 编辑:程序博客网 时间:2024/05/22 16:42
1.事务
事务是将许多动作整合成一个逻辑执行单元,这个执行单元要么全部执行,要么一个都不执行不执行。事务操作具有4的特性
在mysql中只有innoDB存储引擎支持事务处理,所以mysql当中innoDB也是默认的存储引擎。在实际的应用当中经常会使用到事务像转账操作,一个账户的金额减少和另一个账户的金额增加都必须保证都正确执行,否则必须回滚。
在mysql有个属性叫做autocommit,表示是否自动提交事务,默认值是1,表示true,所以我们一般使用sql语句,执行完就立即更新数据库了。如果set auotcommit=0之后sql语句执行完之后必须执行commit才能使数据持久化。
2.事务的使用
开始一个事务start transaction,begin;
回滚事务rollback;
提交一个事务commit
创建一个保存点,可以指定回滚到该点savepoint identifier;
删除一个事务的保存点release savepoint identifier
把事务回滚到标记点 rollback to identifier
使用的例子:
begin;update score set score=40 where scoreid=1;savepoint s1;update score set score=50 where scoreid=1;select * from score;rollback to savepoint s1;select * from score;commit;
最后结果score=40。
3.JDBC中使用事务 try,catch块
try{ connection.setAutoCommit(false); //不自动提交......执行jdbc代码 connection.commit(); }catch(Exception e){ connection.roolback(); }finally{ //清理资源connection.setAutoCommit(true); //改回自动提交}
JDBC中connection提供有关事务处理:
getAutoCommit()
获取此Connection
对象的当前自动提交模式。
setAutoCommit(boolean autoCommit)
将此连接的自动提交模式设置为给定状态。
getTransactionIsolation()
获取此Connection
对象的当前事务隔离级别。
setTransactionIsolation(int level)
试图将此Connection
对象的事务隔离级别更改为给定的级别。
setSavepoint()
在当前事务中创建一个未命名的保存点 (savepoint),并返回表示它的新 Savepoint
对象。
setSavepoint(String name)
在当前事务中创建一个具有给定名称的保存点,并返回表示它的新 Savepoint
对象。
releaseSavepoint(Savepoint savepoint)
从当前事务中移除指定的Savepoint
和后续Savepoint
对象。
rollback()
取消在当前事务中进行的所有更改,并释放此Connection
对象当前持有的所有数据库锁。
rollback(Savepoint savepoint)
取消所有设置给定Savepoint
对象之后进行的更改。
- mysql 事务处理,事务操作,JDBC中事务的使用,事务的sql语句,
- JDBC中事务的使用
- JDBC中事务的使用
- JDBC中事务的使用
- JDBC中事务的使用
- JDBC中事务的使用
- JDBC中事务的使用
- 事务以及JDBC操作事务的学习
- 事务是什么?事务的四大特性? jdbc如何做事务处理?
- DBC事务的概念与JDBC事务处理
- T-SQL 存储过程中使用事务并回滚出错的SQL语句(C#事务处理)
- mysql JDBC事务的处理
- sql事务的使用
- 数据库事务 MYSQL的事务处理功能
- 看事务的sql语句
- C#中事务批量操作sql语句
- JDBC进行mysql数据库操作并保持事务的一致性
- MySql中操作事务
- 个人常用配置文件解析
- #学习笔记#(60)从零开始学习Nodejs[2]——用Telnet发送数据到Node TCP服务器
- CAAnimation--CALayer
- 【ZOJ3939 The 13th Zhejiang Provincial Collegiate Programming ContestD】【日期前缀和预处理】The Lucky Week 第n个幸运
- 在ECG的路上,渐行渐远
- mysql 事务处理,事务操作,JDBC中事务的使用,事务的sql语句,
- IOS+openCV在Xcode的入门开发
- Android进阶之Property Animator研究
- swift2.0 学习笔记Three
- 【ZOJ3940 The 13th Zhejiang Provincial Collegiate Programming ContestE】【脑洞 STL-MAP 复杂度分析 区间运算思想 双指针】M
- iphone socket编程之AsyncSocket使用说明
- 【移动端】基于rem实现手机端页面自适应--动态改变dpr和font-size
- Max Script|多边形的控制
- 编辑器之神-VIM