【发布时间】:2017-11-10 15:59:15
【问题描述】:
在编写 java JDBC 代码来调用存储过程时,我正在使用 con.setAutoCommit(false); 我的问题是以下方法有什么区别:
方法一:
con = DBConnection.getConnection();
con.setAutoCommit(false);
stmt= con.prepareCall("{call updateEmp(?,?,?,?,?,?)}");
stmt.setInt(1, id);
stmt.setString(2, name);
stmt.setString(3, role);
stmt.registerOutParameter(6, java.sql.Types.VARCHAR);
stmt.executeUpdate();
con.commit();
//read the OUT parameter AFTER commit
String result = stmt.getString(6);
或方法 2:
// Read the OUT parameter BEFORE commit
String result = stmt.getString(6);
con.commit();
【问题讨论】:
-
不同的是,commit 是向下一行...
-
@alfasin 有时幽默是个好主意。 +1
标签: java sql oracle procedure autocommit