JDBC学习笔记(事务的处理和批量处理SQL语句)
一、数据库事务:数据库事务是对数据库操作的实时记录,用来防止数据操作中断等错误引起的数据库更新不一致等一系列问题。
举个例子:小明向小红转账1000元,在转账过程中系统突然中断,小红的账户未到账1000元,可小明账户已经扣款1000元。数据库事务就是为了解决类似问题产生,当转账发生错误时系统会回滚事务,将小明和小红的数据还原成转账前的状态。
Connection类里提供三个方法来支持数据库的事务操作
开始事务(即不设置操作为自动提交的状态):setAutoCommit(false)
完成事务(提交操作):commit()
回滚事务(还原数据至开始事务前的状态):rollback()
二、批量处理SQL语句(往往必须与数据库事务搭配,防止执行过程中发生错误)
preparedstatement类里提供了俩个关于批量处理SQL语句的方法:
addBatch():积攒SQL语句
executeBatch():执行已积攒的SQL语句