关于JDBC的ResultSet结果集

前言:关于java.sql.ResultSet接口,做一个简单总结,之后还会继续完善。

ResultSet可以获取到JDBC访问数据库的结果集

普遍用法:它可以由java.sql.PreparedStatement或者java.sql.CallableStatement两个接口获取

java.sql.PreparedStatement用法:

//具体SQL
StringBuffer sql = new StringBuffer(" select * from table\n ");
//con对象为Connection对象,这里不做详解
PreparedStatement p = con.prepareStatement(sql.toString());
//执行后
cstm.execute();
//获取结果集
p.getResultSet();

java.sql.CallableStatement用法:

//具体SQL
StringBuffer sql = new StringBuffer(" select * from table\n ");
//con对象为Connection对象,这里不做详解
CallableStatement cstm = con.prepareCall(sql.toString());
//执行后
cstm.execute();
//获取结果集
ResultSet rs = cstm.getResultSet();

基本的用法有:

//遍历结果集
while(rs!=null && rs.next()){
    //第一种是,通过字段名称获取返回内容
	rs.getString("字段名");//通过字段名称,并且返回String类型的内容
	rs.getDate("字段名");//通过字段名称,并且返回Date类型的内容
	rs.getTimestamp("字段名");//通过字段名称,并且返回Timestamp类型的内容
    rs.getInt("字段名");//通过字段名称,并且返回int基础类型的内容

    //第二种是,通过字段顺序获取返回内容
    rs.getString(0);//获取第1个字段内容,并且返回值为String类型
    rs.getDate(1);//获取第2个字段内容,并且返回值为Date类型
    rs.getTimestamp(2);//获取第3个字段内容,并且返回值为Timestamp类型
    rs.getInt(3);//获取第4个字段内容,并且返回值为int基础类型

    //其余的类型,大致可以根据方法名称识别
}

注意:ResultSet.getDate()方法获取和ResultSet.getTimestamp()方法,都是获取时间内容,但是有区别的是,他们的格式问题;

列如:

数据库类型为SQL SERVER2008,数据格式为dateTime

数据库内容格式为:2018-06-25 09:39:21.000

ResultSet.getDate():返回的数据,格式2018-06-25

ResultSet.getTimestamp():返回的数据,格式2018-06-25 09:39:21.000

你可能感兴趣的:(JAVA)