SQL事务

JDBC实现事务(transaction)

1.事务的开启connection.setAutoCommit(false);

2.中间语句是事务的执行语句

3.事务的提交connection.commit();

package JDBCTest;import JDBCTest.utils.JdbcUtils;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class TransactionTest { public static void main(String[] args) { Connection connection = null; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { connection = JdbcUtils.getConnection (); //关闭数据库的自动提交,会自动开启事务 connection.setAutoCommit (false);//开启事务 String sql1 = "update account set money=money-400 where name=‘A‘"; preparedStatement = connection.prepareStatement (sql1); preparedStatement.executeUpdate (); String sql2 = "update account set money=money+400 where name=‘B‘"; preparedStatement = connection.prepareStatement (sql2); preparedStatement.executeUpdate (); connection.commit ();//提交事务 System.out.println ("成功!"); } catch (SQLException e) { e.printStackTrace (); } finally { JdbcUtils.release (connection,preparedStatement,null); } }}
create table account( name varchar(10) null, money int null, id int auto_increment primary key);

相关文章