事物ACID

今天的主要内容是事物ACID。首先他有以下特征:

原子性(atomicity):组成事务处理的语句形成了一个逻辑单元,不能只执行其中的一部分。

一致性(consistency):在事务处理执行前后,数据库是一致的(两个账户要么都变,或者都不变)。

隔离性(isolcation):一个事务处理对另一个事务处理没有影响。

持续性(durability):事务处理的效果能够被永久保存下来 。

常用API

connection.setAutoCommit(false);

关闭自动提交, 打开事务。

connection.commit();

提交事务。

connection.rollback();

回滚事务。

Savepoint sp = conn.setSavepoint();

设置保存点

conn.rollback(sp);

回滚到保存点

conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);

隔离级别

select@@tx_isolation;

查看隔离级别

set transactionisolation level read uncommitted;

设置读未提交

set transactionisolation level read committed;

设置读已提交

set transactionisolation level repeatable read;

设置可重复读

set transactionisolation level serializable;

设置可序列化

start transaction;

开始事务

rollback;

回滚事务

commit;

提交事务

批处理我感觉是很有用处的,他会让你减少很多繁琐的代码重复

由于建立连接, 以及发送数据非常消耗性能,如果有大批SQL命令需要处理, 最好使用批处理

 

ps = conn.prepareStatement("insertinto user(name,password,email,birthday) values(?,?,?,?)");

for (User user : list) {

   ps.setString(1,user.getName());

   ps.setString(2,user.getPassword());

   ps.setString(3,user.getEmail());

   ps.setDate(4,newDate(user.getBirthday().getTime()));

   ps.addBatch();

}

ps.executeBatch();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值