可滚动集合ResultSet操作

表1:
//ResultSet的type值
ResultSet.TYPE_FORWARD_ONLY; 结果集不能滚动
ResultSet.TYPE_SCROLL_INSENSITIVE; 结果集能滚动,但对数据库变化不敏感
ResultSet.TYPE_SCROLL_SENSITIVE; 结果集能滚动,对数据库变化敏感


//ResultSet的concurrency值
ResultSet.CONCUR_READ_ONLY; 结果集只读不可更新
ResultSet.CONCUR_UPDATABLE; 结果集可更新


//创建不同用处的结果集参数参考值如:表1
Statement stmt = conn.createStatement(type,concurrency);
PreparedStatement pstmt = conn.preparedStatement(sql,type,concurrency);

//判断当前数据库驱动是否支持上述集合特性,支持返回值为true,不支持返回值为false
DatabaseMetaData dbmd = conn.getMetaData();
dbmd.supportsResultSetType(type);
dbmd.supportsResultSetConcurrency(type, concurrency);


//滚动集合操作
rs.next();		//后移
rs.previous();		//前移
rs.relative(rows);	//根据当前行的位置移动rows,rows为负数则后移
rs.absolute(row);	//移动到row行	
rs.first();		//移动到第一行
rs.beforeFirst();	//移动到第一行的前面
rs.isFirst();		//判断当前位置是否是第一行
rs.isBeforeFirst();
rs.last();		//移动到最后一行
rs.afterLast();		//移动到最后一行的后面
rs.isLast();
rs.isAfterLast();
rs.getRow();		//获取当前行号

//更新行
rs.updateXxx(columnIndex, Xxx);	
rs.updateRow();

//添加行		
rs.moveToInsertRow();
rs.updateXxx(columnIndex, Xxx);	
rs.updateXxx(columnIndex, Xxx);	
rs.updateXxx(columnIndex, Xxx);	
rs.insertRow();
rs.moveToCurrentRow();

//删除行
rs.deleteRow();

你可能感兴趣的:(ResultSet)