Din*_*del 1 java jdbc resultset
我正在使用a ResultSet从我的SQL服务器检索数据.代码如下:
ResultSet rs = getValueFormTable();
Run Code Online (Sandbox Code Playgroud)
我正在循环ResultSet这样:
do{
// process data
} while(rs.next());
Run Code Online (Sandbox Code Playgroud)
假设有10条记录,我处于第四个值ResultSet.出现这种情况,我需要将第五条ResultSet记录中的一个值再次返回到第四条Resultset记录.
那可能吗?
假设有10条记录,我在第四个ResultSet值.出现这种情况,我需要将第五个ResultSet的一个值再次返回到第四个Resultset.这可能在java?
您需要"可滚动" ResulSet实例来实现滚动结果集; 如果您需要更新以前的结果集,那么您需要可滚动和可更新的结果集(最后一段讨论可更新的结果集).通常,ResultSets是TYPE_FORWARD_ONLY并且可以仅使用该next()方法在向前方向上滚动.
您将需要创建一个ResultSet类的实例TYPE_SCROLL_INSENSITIVE或TYPE_SCROLL_SENSITIVE调用其他方法,如absolute()与previous()移动来回ResultSet.
创建可滚动条件ResultSet需要您指定或对象ResultSet返回的类型,因为默认类型如前所述.演示如何操作的片段如下所示:StatementPreparedStatementTYPE_FORWARD_ONLY
PreparedStatement pStmt = Connection.prepareStatement(query, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = pStmt.executeQuery();
...
// You can now invoke rs.previous(), rs.absolute(n) etc. to move back and forth.
Run Code Online (Sandbox Code Playgroud)
你会想在读了如何在特定的ResultSet的类型Connection.createStatement,Connection.prepareStatement和Connection.prepareCall方法.
如果要修改内容ResultSet而不是只读取内容,则需要创建"可更新"的ResultSet.通过将ResultSet并发类型指定为,可以轻松完成此操作CONCUR_UPDATABLE.然后,您可以调用任何updateXXX方法,并使用updateRow方法更新基础数据源.
| 归档时间: |
|
| 查看次数: |
857 次 |
| 最近记录: |