JDBC之ResultSet接口

来源:互联网 发布:sql 设置字段的默认值 编辑:程序博客网 时间:2024/06/07 07:07

ResultSet(结果集)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操作数据的功能,可能完成对数据的更新。
结果集读取数据的方法主要是getXXX()

ResultSet rs = statement.executeQuery(sql);While(rs.next()){    rs.getString(“col_name”);    rs.getInt(“col_name”);    //…}

1.最基本的ResultSet。

之所以说是最基本的ResultSet是因为,这个ResultSet他起到的作用就是完成了查询结果的存储功能,而且只能读去一次,不能够来回的滚动读取。这种结果集的创建方式如下:

Statement st = conn.CreateStatement
ResultSet rs = Statement.excuteQuery(sqlStr);

由于这种结果集不支持,滚动的读去功能所以,如果获得这样一个结果集,只能使用它里面的next()方法,逐个的读去数据。

注意:在使用ResultSet rs=ps.executeQuery();的时候一定要注意每次只有使用rs.next()的时候才能调用rs的一些方法

比如说:
从rs结果集中取对应的列值可以这样取 int count=rs.getInt(“count”);但是前提是一定使用了rs.next(),或者使用rs.last()之后才行。

例如:我查询一个对象,想要取出对应的字段放到bean里面,就可以

while(rs.next()){User userInfo =new User();userInfo.setUserName(rs.getString(“user_name”));}

想要获取数据库中总的条数,可以使用select count(0) as count from user_table

当我们想要取出总条数时,用rs.last();
然后int count =rs.getInt(“count”);
若没有这些前奏就会出现 java.sql.SQLException: Before start of result set
我们知道,ResultSet是使用游标去访问每一行数据的,它的起始值为0,也就是说游标为0的时候,是什么值都没有的,你在这时取任何对象任何字段都是取不到的。

这里写图片描述

这里写图片描述
参考博客:
http://blog.csdn.net/ustcxjt/article/details/7289345

原创粉丝点击