JDBC(3)—ResultSet结果集
- 简介:ResultSet:结果集。封装了使用JDBC进行查询的结果。Statement只能进行更新操作,所以使用ResultSet进行查询操作。
- 1.调用Statement对象的executeQuery(sql),可以得到结果集。
- 2.ResultSet返回的实际上就是一张数据表,有一个指针指向第一个的前面,可以调用next(),检查下一行是否有效。
*若有效返回true,且指针下移。 - 3.每当指针移到一行时,可以通过调用getXxx(index)、getXxx(columnName)、获取每一列的值,例如:getInt(1)
*getString(“name”)。 - 4.ResultSet()也需要关闭。
- 功能:获取id为6的customer数据表的记录,并打印。
步骤:
- 1.获取Connection连接
- 2.获取Statement对象
- 3.准备SQL语句
- 4.执行查询,使用executeQuery(sql)方法
- 5.处理ResultSet
- 6.关闭数据库连接
实例:
public class Resultset_3 {
@Test
public void testResultSet(){
Connection conn = null;
Statement state = null;
ResultSet rs = null;
try {
//1.获取连接
conn = TestTools.getConnection();
//2.获取Statement
state = conn.createStatement();
//3.准备SQL语句
//查询一条记录
String sql = "select id, name, age, birth,address " +
"from customers where id = 6 ";
//查询所有记录
String sql1 = "select id, name, age, birth,address " +
"from customers";
//4.执行查询
rs = state.executeQuery(sql1);
System.out.println(rs);
//5.处理ResultSet
//if(rs.next()){
while(rs.next()){
int id = rs.getInt(1);//参数1表示:id在第一列
String name = rs.getString(2);//参数2表示:name在第二列
//String name = rs.getString("name");//参数name表示:别名
String age = rs.getString(3);//参数3表示:age在第三列
Date birth = rs.getDate(4);//参数4表示:birth在第四列
String address = rs.getString(5);//参数5表示:aadress在第五列
//输出查询结果
System.out.println(id);
System.out.println(name);
System.out.println(age);
System.out.println(birth);
System.out.println(address);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}finally{
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(state != null){
try {
state.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
JDBC(3)—ResultSet结果集的更多相关文章
- 获取jdbc中resultSet结果集的大小
当我们执行完一条Sql语句,获取到一个 ResultSet 对象后,有时我们需要立即知道到底返回了多少个元素,但是 ResultSet 并没有提供一个 size() 方法 or length 的属性, ...
- JDBC连接数据以及详细的ResultSet结果集解释
一.数据库连接 (前面为jdbc的其他参数,文章下部分为ResultSet详解) ResultSet rs = st.executeQuery(sqlStr) 1. java的sql框架支持多种数据库 ...
- JDBC——ResultSet结果集对象
ResultSet结果集对象,封装结果.它是怎么做到封装结果的呢? 游标,类似指针索引最初指在“列名”上,要取到数据就需要让游标向下移动移动后就指向了第一行数据,然后通过一些方法把第一行的每一列都取出 ...
- 使用ResultSet结果集查询数据
直接上下代码: package com.learn.jdbc.chap05; import java.sql.Connection; import java.sql.PreparedStatement ...
- JDBC05 ResultSet结果集
ResultSet结果集 -Statement执行SQL语句时返回ResultSet结果集 -ResultSet提供的检索不同类型字段的方法,常用的有: getString():获得在数据库里是var ...
- jdbc 05: 查询结果集
jdbc连接mysql,查询结果集 package com.examples.jdbc.o5_结果集查询; import java.sql.*; import java.util.ResourceBu ...
- 将JDBC ResultSet结果集变成List
private List<Map<String, Object>> list = new ArrayList<Map<String,Object>>() ...
- 将JDBC ResultSet结果集转成List
private List<Map<String, Object>> list = new ArrayList<Map<String,Object>>() ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- pom.xml的第一行报错
第一行:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or ...
- Mac Terminal 菜鸟篇之目录跳转命令
以前一直都是使用Windows系统,连命令行都没怎么用过.来到了Mac,在某位大神的诱导下,我开始尝试使用Mac Terminal,下面总结的是一些简单的目录跳转命令(菜鸟级). 文件目录 首先要清楚 ...
- python语法小应用---列表和元组
声明:本文章为参考总结CSDN上知识点所获,只是用来总结自己学习而用,如有侵权,会删除! 列表(list): 列表就像一个线性容器,但是比C++的 lis t扩展多得多 列表里的元素可以是相同类型,也 ...
- 判断Javascript变量是否为空 undefined 或者null(附样例)
1.变量申明未赋值 var type; //type 变量未赋值 1. type==undefined //true 2. type===undefined //true 3. typeof(type ...
- X-Forwarded-For 的一些理解
X-Forwarded-For 是一个 HTTP 扩展头部, 主要是为了让 Web 服务器获取访问用户的真实 IP 地址(其实这个真实未必是真实的,后面会说到). 那为什么 Web 服务器只有通过 X ...
- win10下vscode配置sftp
sftp配置 1.在vscode中下载sftp插件 在vscode中快捷键 ctrl+shift+P 打开指令窗口,输入extension:install,回车,左侧即打开扩展安装的界面 在搜索框中 ...
- 洛谷P2239 螺旋矩阵
传送门 分析:将整个矩阵看成 "回" 形状的分层结构,然后进行去层处理,使得要求得 \((i,j)\) 处于最外层,然后再分情况讨论.最外面的一层共有数: $ 4 * n - 4 ...
- python 全栈开发,Day16(函数第一次考试)
考试题 Python11 期第二次考试(基础数据类型与函数部分) 考试时长:3个小时 满分:105分 一,选择题(每题2分,共24分) 1.python不支持的数据类型有 A.char B.int C ...
- Masm615+notepad++6.8.8搭建汇编开发环境
前言:很早以前搭过,做了笔记的.现在重新玩汇编,按照笔记撘环境,谁知道坑了自己两个小时,气的我现在打字手都在抖 准备工作: 1.Masm615汇编环境,下载地址:https://pan.baidu.c ...
- 深度优先搜索(DFS)和广度优先搜索(BFS)
深度优先搜索(DFS) 广度优先搜索(BFS) 1.介绍 广度优先搜索(BFS)是图的另一种遍历方式,与DFS相对,是以广度优先进行搜索.简言之就是先访问图的顶点,然后广度优先访问其邻接点,然后再依次 ...