系统中一个系统设置的功能,也就是系统中的一些参数之类的,使用的人很少,我想就直接使用CachRowSet好了,这样操作简单,层次少,写起来还快,结果遇到麻烦了,调试的时候好使过一阵子,但是现在怎么也不能成功的了!在提交更新的时候,总是更新失败:
java.sql.SQLException: acceptChanges Failed at sun.jdbc.rowset.CachedRowSet.acceptChanges(CachedRowSet.java:789)
!
写了一段测试的代码,居然也不能成功,如下:
初始化:
rowset.setUrl("jdbc:oracle:thin:@192.168.100.163:1521:ebs");
rowset.setTableName("tbrate");
rowset.setUsername("ebs");
rowset.setPassword("ebs");
rowset.setCommand("select rateid,serviceid,areaid,ptamount,amount,paytypeid,begindate,enddate from tbrate");
rowset.execute();
更新:
rowset.setReadOnly(false);
rowset.absolute(Integer.parseInt(rowID));
rowset.updateString("SERVICEID", String.valueOf(rateItem.getServiceID()));
rowset.updateString("AREAID", String.valueOf(rateItem.getAreaID()));
rowset.updateInt("PTAMOUNT", rateItem.getPtamount());
rowset.updateInt("AMOUNT", rateItem.getAmount());
rowset.updateInt("PAYTYPEID", rateItem.getPayTypeID());
rowset.updateDate("BEGINDATE", Date.valueOf("1925-03-03"));
rowset.updateDate("ENDDATE", Date.valueOf("1925-03-03"));
rowset.updateRow();
rowset.setReadOnly(true);
rowset.beforeFirst();
提交:
rowset.acceptChanges();
rowset.beforeFirst();
提交失败这个异常总是无法解决,也不知道更详尽的错误信息,有过类似经历的人help一下,多谢多谢!