【发布时间】:2010-02-15 19:43:52
【问题描述】:
是否可以更新/刷新RowSet,以防表内容发生更改(例如,另一个应用程序修改它)?所以这样我“总是”有一个最新版本的表格。
我查看了RowSetListener,但这些事件似乎只有在我直接修改RowSet 时才会被调用。知道有变化就足够了,我知道......这很多:)
请分享您的想法!提前致谢! 丹尼尔
【问题讨论】:
标签: java jdbc cachedrowset rowset
是否可以更新/刷新RowSet,以防表内容发生更改(例如,另一个应用程序修改它)?所以这样我“总是”有一个最新版本的表格。
我查看了RowSetListener,但这些事件似乎只有在我直接修改RowSet 时才会被调用。知道有变化就足够了,我知道......这很多:)
请分享您的想法!提前致谢! 丹尼尔
【问题讨论】:
标签: java jdbc cachedrowset rowset
不,对于大多数传统的 RDBMS 来说,没有任何办法。只是因为http://en.wikipedia.org/wiki/ACID#Isolation
【讨论】:
是的,可以刷新 RowSet。只需再次调用它的“execute()”方法。
根据docs:
如果此方法成功,行集的当前内容被丢弃,行集的元数据也被(重新)设置。
在此刷新时触发rowSetChanged 事件。
如果您询问是否可以在数据库服务器上的数据更改时自动刷新 RowSet:我不知道。您可能不想知道此类更改,具体取决于您的隔离级别、锁定和 MVCC 策略。
【讨论】: