通过JDBC:ODBC如何实现事务

vison2001 2002-05-07 10:39:53
通过JDBC:ODBC桥连接ACCESS数据库如何实现事务的提交
主要程序如下:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:XXXX");
PreparedStatement stmt1 = con.prepareStatement(
"delete from mes_in where id like ?");
stmt1.setString(1,id);
stmt1.executeUpdate();
con.commit();
该事务无法提交,必须用con.close()断开连接才能提交,应该如何修改才能不用con.close()都能提交。
...全文
75 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hcgui 2002-05-07
  • 打赏
  • 举报
回复
关注!
PowerEngine 2002-05-07
  • 打赏
  • 举报
回复
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:XXXX");
conn.setAutoCommit(false);
PreparedStatement stmt1 = con.prepareStatement(
"delete from mes_in where id like ?");
stmt1.setString(1,id);
stmt1.executeUpdate();
con.commit();
}
catch(SQLException e){
conn.rollback();
}

vison2001 2002-05-07
  • 打赏
  • 举报
回复
加上con.setAutoCommit(false);后编译通过,运行时出现错误如下:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access 驱动程序]现在无法设置属性

at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6031)

at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)

at sun.jdbc.odbc.JdbcOdbc.SQLSetConnectOption(JdbcOdbc.java:4458)

at sun.jdbc.odbc.JdbcOdbcConnection.setAutoCommit(JdbcOdbcConnection.java:649)

at bysj.Query.del_mes_in(Query.java:129)

at bysj.Query.main(Query.java:150)
tigerbean 2002-05-07
  • 打赏
  • 举报
回复
同意楼上的
nunu 2002-05-07
  • 打赏
  • 举报
回复
conn.setAutoCommit(false);
conn.commit();
conn.rollback();

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧