当前位置:编程学习 > JAVA >>

TYPE_SCROLL_SENSITIVE对upate更新,不支持???

DatabaseMetaData dmd = conn.getMetaData();
System.out.println("对可移动敏感的结果集是否支持:"+dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE);//返回true
....
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("select * from user1");
System.out.println("请等待。。。");
Thread.sleep(15000);
//修改表中数据
while(rs.next())
{
...
//打印,但是输出的数据时更新之前的

}
用的Oracle数据库
求高手解答。。。。。。
jdbc 数据库 --------------------编程问答--------------------
怎么一个人都没有。。。。。 --------------------编程问答-------------------- 首先,TYPE_SCROLL_SENSITIVE只对表行的更新有效,对插入和删除无效。
然后,使用stmt.setFetchSize(1)设置每次从数据库中取的行数。
你先试试上面两条能不能解决吧 --------------------编程问答--------------------
引用 2 楼 bluemoby 的回复:
首先,TYPE_SCROLL_SENSITIVE只对表行的更新有效,对插入和删除无效。
然后,使用stmt.setFetchSize(1)设置每次从数据库中取的行数。
你先试试上面两条能不能解决吧

我的就是修改了下数据,不是指插入和删除,但是修改后的结果没有反应到结果集中。。。。 --------------------编程问答--------------------
引用 3 楼 yiwangwuqianbhz 的回复:
引用 2 楼 bluemoby 的回复:首先,TYPE_SCROLL_SENSITIVE只对表行的更新有效,对插入和删除无效。
然后,使用stmt.setFetchSize(1)设置每次从数据库中取的行数。
你先试试上面两条能不能解决吧
我的就是修改了下数据,不是指插入和删除,但是修改后的结果没有反应到结果集中。。。。

setFetchSize(1)也试过了吗? --------------------编程问答--------------------
引用 4 楼 bluemoby 的回复:
引用 3 楼 yiwangwuqianbhz 的回复:
引用 2 楼 bluemoby 的回复:首先,TYPE_SCROLL_SENSITIVE只对表行的更新有效,对插入和删除无效。
然后,使用stmt.setFetchSize(1)设置每次从数据库中取的行数。
你先试试上面两条能不能解决吧
我的就是修改了下数据,不是指插入和删除,但是修改后的结果没有反应到结果集中。。。。
setFet……

setFetchSize试了,不行,setFetchSize这个跟sensitive有什么关联么?! --------------------编程问答--------------------
引用 5 楼 yiwangwuqianbhz 的回复:
引用 4 楼 bluemoby 的回复:引用 3 楼 yiwangwuqianbhz 的回复:
引用 2 楼 bluemoby 的回复:首先,TYPE_SCROLL_SENSITIVE只对表行的更新有效,对插入和删除无效。
然后,使用stmt.setFetchSize(1)设置每次从数据库中取的行数。
你先试试上面两条能不能解决吧
我的就是修改了下数据,不是指插入……

我以前看过一篇文章,提到过在调用rs.next的时候,有可能会根据setFetchSize提前读取一些数据放在缓存里,不过我自己没有试验过。
你确定修改的内容持久化到数据库里了吗?会不会是更新那里的事务没提交?设置con.setAutoCommit(true)或者手动提交事务试试。
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,