查询数据库里的数据

原创 2012年03月23日 09:55:01

Statement对象的executeQuery()方法一般用于执行一个select语句,它只返回一个结果集,要想把查询结果最后显示给用户,必须对ResultSet对象进行处理。ResultSet对象包括一个由查询语句返回的一个表,这个表中包含所有的查询结果。对ResultSet对象的处理必须逐行进行。ResultSet对象维持一个指向当前行的指针(类似于Iterator的用法)。最初,这个指针指向第一行之前。ResultSet的next()方法使这个指针移向下一行。因此,第一次使用next()方法将指针指向结果集的第一行,这是可以对第一行的数据进行处理。处理完毕后,使用next()方法,将指针移向下一行,继续处理第二行数据。next()方法的返回值是一个boolean值,若为true,则说明指针成功地移向下一行,可以对该行进行处理。若返回值是false,则说明没有下一行,即结果集已经处理完毕。按从左至右的顺序对各列进行处理可以获得较高的执行效率。ResultSet接口的getXXX()方法可以从某列中获得结果,XXX表示JDBC的数据类型。

请看下例:

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;

public class ResultSetTest {
	public static void main(String[] args) {
		Connection con = null;
		try {
			con = DBCon
					.getConnectionFromPooledDataSource("jdbcPool/mydatasource");
			Statement st = con.createStatement();
			String query = "select id,name from student";

			// 获得一个结果集
			ResultSet rs = st.executeQuery(query);
			// 获得结果集的元数据(表及相关的信息)
			ResultSetMetaData rsmt = rs.getMetaData();
			// 得到结果集有几列
			int num = rsmt.getColumnCount();
			String[] columns = new String[num];
			// 列的序号是从1开始的
			for (int i = 0; i < num; i++)
				columns[i] = rsmt.getColumnName(i + 1);
			// 先输出列名
			for (int i = 0; i < num; i++)
				System.out.print(columns[i] + "  ");
			// 输出列名之后换行
			System.out.println();
			// 取出结果
			while (rs.next()) {
				// 输出每一行的值
				for (int i = 1; i <= num; i++) {
					String temp = rs.getString(i);
					System.out.print(temp + "  ");
				}
				System.out.println();
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 用完后要关闭连接,释放资源
				if (con != null)
					con.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

	}
}
	

输出结果为:(Eclipse环境)


JDBC查询数据库中的数据

只用JDBC技术查询表中的全部内容时,需要使用查询全部的SQL语句,把查询结果放到List集合中。package qddx.JDBC; import java.util.*; import java....

pb作的动态查询数据库数据

  • 2011年03月03日 16:43
  • 78KB
  • 下载

查询数据库中有数据的表SQL语句

  • 2012年01月05日 15:06
  • 194B
  • 下载

ajax根据ID查询数据库并返回Json格式数据返回js,使用append显示到页面。判断json值为[]或者[[]]的问题。

ajax根据ID查询返回json并显示,值为[]或者[[]]怎么判断 Java后台代码 @ResponseBody @RequestMapping(value="/queryCoupo...

listview中数据如果要实时读写,需要每次操作后都要查询数据库吗

总结一下填充listview的步骤: 1:准备数据:先把要填充的数据从数据库中查询出来,放入一个list存放 2:设置listview中item的格式,新建一个xml文件,自定义布局 3:新建一...

查询数据库中所有表的数据数量的方法

要查询一个表的数据数量,相信大家很快就想到了select count(1) from table1,但如果我们要查询数据库中所有表的的数据数量要怎么查呢?方法比较多,下面介绍两种本人常用的方法: ...

Jsp用JDBC查询数据库并输出JSON格式数据

首先是数据库的准备,用MySQL存储数据 然后在Jsp用JDBC查询数据,输出JSON格式数据 数据库脚本 CREATE database MyNews; use MyNews; CREATE TAB...
  • wu_wxc
  • wu_wxc
  • 2016年04月27日 00:29
  • 4261

android sqlite使用之模糊查询数据库数据的三种方式

android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: pa...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:查询数据库里的数据
举报原因:
原因补充:

(最多只允许输入30个字)