据我所知,可滚动ResultSet的语句对象如下所示。
Statement statement = connection.createStatement(P1, P2);
这里P1可能需要
ResultSet.TYPE_SCROLL_SENSITIVE
ResultSet.TYPE_SCROLL_INSENSITIVE
P2可能需要
ResultSet.CONCUR_READ_ONLY
ResultSet.CONCUR_UPDATABLE
SCROLL_SENSIVITE或INSENSITIVE表示是否更新 ResultSet将影响实际数据库或不影响。 (READ_ONLY或Updatable的种类)
所以这两个参数都是相似的,我觉得它们是为了同样的目的而实现的。
他们有什么不同,或者我在这里遗漏了什么?
答案 0 :(得分:5)
第二个参数CONCUR_*
确定你是否可以通过ResultSet
修改数据库。 TYPE_SCROLL_(IN)SENSITIVE
确定在滚动ResultSet
时是否可以看到对基础行所做的修改。所以INSENSITIVE
提供了一个"快照"从结果来看,他们永远不会改变。 SENSITIVE
提供"直播"查看,因此,如果您长时间滚动结果,您可以看到与查询最初返回的值非常不同的值。
相关,但他们是对立面"。