java连接数据库第二课(connection)-CSDN博客

125 阅读1分钟
package com.Connection;

import java.beans.PropertyVetoException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class Transaction_management_demo1 {
    public static void main(String[] args) throws Exception {
        //现在目的是定义两个sql语句并且同时执行,如果有一个出现错误,那么所有的就会保持原样

        //获取连接对象
        String url = "jdbc:mysql:///db";
        String name = "root";
        String passwd = "123";
        Connection conn = DriverManager.getConnection(url,name,passwd);

        //创建执行对象
        Statement execute = conn.createStatement();



        try {
            //开启事务
            conn.setAutoCommit(false);

            //定义sql语句 一
            String sql1 = "update account set money = 1000 where id = 1";
            //执行sql1
            int count1 = execute.executeUpdate(sql1);

            //造一个异常
            int s = 3/0;

            //定义sql语句 二
            String sql2 = "update account set money = 1000 where id = 2";
            //执行sql1
            int count2 = execute.executeUpdate(sql2);

            //提交事务
            conn.commit();

        } catch (SQLException e) {
            //回滚事务
            conn.rollback();
            e.printStackTrace();
        }
    }
}