JDBC的事务控制
1、所谓事务:是指一组原子操作(一组SQL语句执行)的工作单元,这个工作单元中的所有原子操作在进行期间,与其他事务隔离,免于因数据来源的交相更新而发生混乱,事务中的所有原子操作要么全部执行成功,要么全部失败。
2、创建步骤
⑴设置事务的提交方式为非自动提交:conn.setAutoCommit(false);
⑵ 将需要添加事务的代码放在try、catch块中:
try {
//需要添加事务的业务代码
} catch (SQLException e) {
...
}
⑶在try块内添加提交操作,表示操作无异常,提交事务:conn.commit(); //正常流程,提交事务
⑷在catch块内添加回滚事务,表示操作出现异常,撤消事务:conn.rollback(); //发生异常,撤消事务
⑸设置事务提交方式为自动提交:conn.setAutoCommit(true); //自动提交事务
Mysql事务处理,批处理
我们在用set @@autocommit=0
Start transaction 事务开始
当用commit时候就开始的是第二个事务了,
当我们用Rollback;时候我们我们就回滚到了操作前;
保存 点Savepoint
Rollback work to savepoint;
Commit
回滚到保存点
查看使系统select @@tx_isolation变量
设置事务的隔离级别
Set transaction isolation level read uncommitted
查询姓名id
在这里设置事务部自动提交
Set @@autocommit=0