JDBC那些事(二)——查询结果集_ResultSet
来源:互联网 发布:孤寡老人数据 编辑:程序博客网 时间:2024/06/05 06:03
接上一篇,JDBC的查询返回值相对复杂一点,所以单独写。上一篇写到stmt.excuteUpdate(sql);执行结果返回的是int类型的值。此处的sql语句为非查询语句。而如果要执行查询语句则需要使用Statement对象的excuteQuery(sql);我们都知道在cmd或者图形化界面下执行查询语句返回的是一个二维的数据表格。那么如果JDBC需要拿到查询结果数据,就必须遍历表格。
JDBC给执行查询结果定一个了一个返回结果集的类型ResultSet ,在ResultSet中有一个指向行的光标。
ResultSet rs = stmt.executeQuery(sql); rs为结果对象集。通过rs.next();进行行(hang)遍历,rs提供了getString(i),getString("a"),(i为第几列,a为对应的列明)两种方式进行列表遍历;所以只要能够获得查询结果集的总列数。通过行列遍历就可以遍历整个查询的结果集。我们可以通过rs.getMetaData().getColumnCount();的方式获取到插叙结果集。这样便可以进行结果集的遍历。遍历核心代码如下:
int count = rs.getMetaData().getColumnCount();while(rs.next()) {//遍历行,next()方法返回值为Boolean,当存在数据行返回true,反之falsefor(int i = 1; i <= count; i++) {//遍历列System.out.print(rs.getString(i));if(i < count) {System.out.print("---");//为数据隔开美观,没实际意义}}System.out.println();}这样数据结果集就遍历了。
顺便说一下,完整的JDBC代码连接过程代码有三个对象是需要关闭的,不然后容易引发不可预测的错误。关闭的时候注意下关闭顺序,先定义的后关闭。即:
if(rs != null) rs.close();f(stmt != null) stmt.close();if(con != null) con.close();
0 0
- JDBC那些事(二)——查询结果集_ResultSet
- jdbc——将查询结果作为list输出
- JDBC查询结果集字段类型整理
- jdbc 查询结果集 映射到list
- JDBC(3)—ResultSet结果集
- JDBC那些事(一)——初始JDBC
- Jdbc查询数据库处理结果集优化查询代码
- jdbc关联模型查询-多表查询返回结果集
- 那些年干过的事(二)—成绩查询网站爆库及防护
- JavaSE__原始的JDBC连接数据库,查询结果集
- 【JDBC】(3)获取查询结果集ResultSet
- JDBC(三)查询与 ResultSet 结果集
- mysql数据库——查询结果集
- Java JDBC学习实战(二): 管理结果集
- JDBC(二)大结果集分页,批处理,学习
- JDBC那些事(三)——PreparedStatement预编译对象
- JDBC那些事(四)——原生JDBC的一些缺陷
- JDBC结果集用法
- Poj 1988 Cube Stacking(带权并查集)
- 第二节 Windows和linux下安装PHP扩展
- Linux下如何创建并使用一个static library
- C#32位程序与64位程序读\写注册表的区别
- R语言笔记--par()函数详解
- JDBC那些事(二)——查询结果集_ResultSet
- 163----三级联动---实际开发中if嵌套过多,很少使用
- 基于dragonboard 410c的智能魔镜设计(9)——UI交互控制逻辑实现
- 欢迎使用CSDN-markdown编辑器
- 四种常见的浏览器内核简介
- fetch与lazy
- VS2013 密钥
- opencv 图片增加水印
- 停止Java线程,小心interrupt()方法