在滚动结果集中可用的方法有:
rs.previous();//向前滚动
rs.next();//向后滚动
rs.getRow();//得到当前行号
rs.absolute(n);//光标定位到n行
rs.relative(int n);//相对移动n行
rs.first();//将光标定位到结果集中第一行。
rs.last();//将光标定位到结果集中最后一行。
rs.beforeFirst()//将光标定位到结果集中第一行之前。
rs.afterLast();//将光标定位到结果集中最后一行之后。
rs.moveToInsertRow();//光标移到插入行
rs.moveToCurrentRow();//光标移回到调用
rs.moveToInsertRow()方法前光标所在行
//测试光标位置
rs.isFirst()
rs.isLast()
rs.isBeforeFirst()
rs.isAfterLast()
在可更新结果集中可用的方法有:(单表)
rs.insertRow();//把插入行加入数据库和结果集
rs.deleteRow();//从数据库和结果集中删除当前行
rs.updateXXX(int column,XXX data);XXX代表int/double/String/Date中类型之一
rs.updateXXX(String columnName,String Data); //以上两个方法更新结果集当前行
rs.updateRow();//更新内容发送到更新数据库
ResultSetMetaData
可以根据 ResultSet.getMetaData() 方法获得 ResultSetMetaData
通过该对象可以得到表的结构,包括 列名,列的个数,列数据类型
获取列名
ResultSetMetaData.getColumnName(i);
获取第 i 位的列名
获取列个数
ResultSetMetaData.getColumnCount();
获取列的个数
获得列类型
ResultSetMetaData.getColumnType(i);
获取第 i 位的列类型,对应java.sql.Types中的值
ResultSetMetaData.getColumnTypeName(i);
获取第 i 位的列类型名称
ResultSet rs;ResultSetMetaData metaData = rs.getMetaData();while (rs.next()) {for (int i = 0; i < metaData.getColumnCount(); i++) {String col_name = metaData.getColumnName(i + 1);// 获取列名log.info(i + col_name);Object value = rs.getObject(col_name);//获取列对应的值。}
注意事项
hive中不支持last方法
