8

有人可以告诉我 JDBC ResultSet Scroll Sensitive Type 和 Result Set Scroll Insensitive Type 之间的区别吗?

我们在项目中通常在哪里使用这些?

4

3 回答 3

8

ResultSet 对象的类型决定了它在两个方面的功能级别:可以操作游标的方式,以及对基础数据源所做的并发更改如何由 ResultSet 对象反映。

TYPE_SCROLL_INSENSITIVE

结果可以滚动;它的光标可以相对于当前位置前后移动,并且可以移动到绝对位置。结果集对打开时对基础数据源所做的更改不敏感。它包含在执行查询时或检索行时满足查询的行。

TYPE_SCROLL_SENSITIVE

结果可以滚动;它的光标可以相对于当前位置前后移动,并且可以移动到绝对位置。结果集反映了在结果集保持打开状态时对基础数据源所做的更改。

有关更多详细信息,请参阅javase 教程

于 2012-08-03T12:26:49.887 回答
4

ResultSet Scroll Sensitive Type ( TYPE_SCROLL_SENSITIVE) :指定结果集可在任一方向滚动,并受其他事务或同一事务中的语句提交的更改的影响。

Result Set Scroll Insensitive Type ( TYPE_SCROLL_INSENSITIVE) :指定结果集可在任一方向滚动,但对其他事务或同一事务中的其他语句提交的更改不敏感。

还要检查javadoc

于 2012-08-03T12:26:47.973 回答
0

可滚动结果集(TYPE_SCROLL_SENSITIVE)和不可滚动结果集(TYPE_SCROLL_INSENSITIVE)是Resultset基于其敏感性的两种类型的对象。结果集是用于从 Java EE 应用程序访问数据库的对象。

ResultSet 对象有一个游标,它最初不指向任何记录。调用 ResultSet 的 first() 函数将光标移动到 ResultSet 对象持有的第一条记录。ResultSet 的 get 函数使用数据库表中的列名提供对每列内容的访问

不可滚动的结果集只能从第一个元素向前移动到最后一个元素,并且它们不能直接移动到数据库中的任何行。

而 Scrollable 结果集可以双向遍历,即向前或向后,并且它还可以在任何时间点指向数据库中的任何行,这使得它更加灵活。

参考: 可滚动的 ResultSet 和不可滚动的 ResultSet 对象之间的区别?

于 2012-08-03T12:34:41.117 回答