我在ResultSet中插入了多行,如下图所示,我需要在插入所有行后打印出ResultSet,因此尝试将光标移回第一行之前,错误 - “错误在这行:Java.lang.IllegalStateException:当光标位于插入行上此方法不能被称为”JDBC - 将光标移出insertRow
ResultSet rs = ...;
for(int i=0; i<5; i++){
rs.moveToInsertRow();
rs.updateString("NAME", "Jon");
rs.updateString("ADDRESS", "111 New York");
rs.updateString("EMAIL", "[email protected]");
}
rs.beforeFirst(); // Error at this line: Java.lang.IllegalStateException: This method cannot be called when the cursor is on the insert row
//ResultSet print logic goes here
if(rs.getType() == ResultSet.TYPE_FORWARD_ONLY){
ResultSetMetaData rsmd = rs.getMetaData();
int columnsNumber = rsmd.getColumnCount();
while (rs.next()) {
for (int i = 1; i <= columnsNumber; i++) {
String columnValue = rs.getString(i);
sb.append(rsmd.getColumnName(i)).append(" : ").append(columnValue).append(" ");
}
}
}
任何想法,如何将光标移动回到初始位置的时候调用moveToInsertRow ()已被调用?