setAutoCommit是False但程序仍然运行SQL语句,好像Autocommit = True?

时间:2017-11-10 12:57:08

标签: java mysql jdbc

我正在编写一个java程序来处理mySQL数据库,我已经将autocommit设置为false,这样我就可以选择要执行的语句,但程序不允许我可以输入任何陈述并自动提交所有陈述,任何建议吗?

Connection conn = DriverManager.getConnection
              ("jdbc:mysql://"+host+":3306/com345db", user, pass);
conn.setAutoCommit(false);

// Creating a statement lets us issue commands against the connection.
Statement s = conn.createStatement();   
 // Creating and populating Actor table

 s.executeUpdate("create table IF NOT EXISTS Actor( ActorName VARCHAR(20)  
PRIMARY KEY,  Sex VARCHAR(6), Nationality VARCHAR(20), DOB DATE,  
DebutFilmTitle VARCHAR(30))");

 System.out.println("Created table Actor");

 s.executeUpdate("insert into Actor values('George Clooney', 'Male', 
'American', Date'1965-12-04','Casualty')");

 conn.commit();

 System.out.println("Inserted some actors");   
 ResultSet result=s.executeQuery("Select * From Actor");
 System.out.println("Results: ");
 while(result.next()) {
 System.out.println(result.getString(1) +"  "+ result.getString(2) + "  
"+result.getString(3) +"  "+  result.getString(4)+"  "+ result.getString(5) 
);
 }
 // We end the transaction and the connection.

 conn.commit();


 conn.close();
}

0 个答案:

没有答案
相关问题