JDBC_06_处理查询结果集
JDBC处理查询结果集
* ResultSet resultSet=null 结果集对象
* executeQuery(select) 执行SQL查询语句需要的使用executeQuery方法
* int executeUpdate(insert / delete / update); ResultSet executeQuery( select );
* boolean resultSet.next() 方法 返回true/false. 执行到resultSet.next()会往下移动一行,如果下一行有数据那么返回true,没有数据返回false
* resultSet.getString(); 方法 获取列数据,括号里可以跟列下标(1 下标从1开始),也可也跟("列名"),使用该方法,无论数据库中的数据是什么类型的,都会自动转换成String类型。
* 如果查询语句中使用了'别名',那么在getString()方法中需要跟修改后的别名。
* getString() 和 getNString() 的区别
- getString()无论底层数据库中的数据类型是什么,都会转换成String类型数据。
- getNString()如果查询了数据类型不为 NCHAR、NVARCHAR、LONGNVARCHAR 的字段,就会报错。
* 还有 getInt、getDouble、getByte、getArray....等等方法,可以获得所相对应的数据库中的数据。
* 代码:
```
import java.sql.*;
public class JDBCTest06 {
public static void main(String[] args) {
//创建连接对象
Connection connection=null;
Statement statement=null;
ResultSet resultSet=null;
try{
//注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//获取连接
connection= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/employ?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai",
"root","123456");
//获取数据库操作对象
statement=connection.createStatement();
//执行SQL查询语句 ,获取结果集
resultSet = statement.executeQuery("SELECT * FROM DEPT");
//处理查询结果集
/*
while(resultSet.next()){
String deptno=resultSet.getString(1);
String dname=resultSet.getString(2);
String loc=resultSet.getString(3);
System.out.println(deptno +" "+dname+" "+loc);
}
*/
while(resultSet.next()){
//数据库中什么类型的数据,可以用相应类型的方法获取。
int deptno=resultSet.getInt("DEPTNO");
String dname=resultSet.getString("DNAME");
String loc=resultSet.getString("LOC");
System.out.println(deptno +" "+dname+" "+loc);
}
}catch (Exception e){
}finally {
//释放资源
if (resultSet!=null){
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (statement!=null){
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
JDBC_06_处理查询结果集的更多相关文章
- Eclipse中java获得mysql的查询结果集
不废话,先上代码,再上解释说明 package com.ningmeng; import java.sql.*; /** * 1:获取查询结果集 * @author biexiansheng * */ ...
- mysql 根据查询结果集更新
声明: MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得 其本质还是更新的数据需要查询获得. 例如: use ...
- SQL Server的优化器会缓存标量子查询结果集吗
在这篇博客"ORACLE当中自定义函数性优化浅析"中,我们介绍了通过标量子查询缓存来优化函数性能: 标量子查询缓存(scalar subquery caching)会通过缓存结果减 ...
- mysql把查询结果集插入到表理
把表B的内容插入到表A INSERT INTO 1111_0 SELECT*FROM report_0 把查询结果集插入到表中 insert into A(a,b,c) select from B(a ...
- Spring JdbcTemplate 查询结果集Map反向生成Java实体(转)
原文地址:Spring JdbcTemplate 查询结果集Map反向生成Java实体 以前写过一篇文章吐槽过Spring JdbcTemplate的queryForList方法(参见:http:// ...
- Oracle 如何循环查询结果集,进行新增或修改
Oracle的PL/SQL中怎样循环查询的结果集,然后根据查询结果进行判断,是新增或修改操作 loop循环例子 for item in (select a,b,c from table_a where ...
- SELECT查询结果集INSERT到数据表
简介 将查询语句查询的结果集作为数据插入到数据表中. 一.通过INSERT SELECT语句形式向表中添加数据 例如,创建一张新表AddressList来存储班级学生的通讯录信息,然后这些信息恰好存在 ...
- 完整的jdbc查询结果集编码
public static ArrayList<HashMap<String,Object>> query(Connection conn,String sql, Object ...
- CASE函数 sql server——分组查询(方法和思想) ref和out 一般处理程序结合反射技术统一执行客户端请求 遍历查询结果集,update数据 HBuilder设置APP状态栏
CASE函数 作用: 可以将查询结果集的某一列的字段值进行替换 它可以生成一个新列 相当于switch...case和 if..else 使用语法: case 表达式/字段 when 值 then ...
随机推荐
- mbatis中的#{}和${}
#{}和${}的区别是什么?a.#{}是预编译处理,${}是字符串替换. b.Mybatis 在处理#{}时,会将 sql 中的#{}替换为?号,调用 PreparedStatement 的 set ...
- 微信小程序:报错fail webview count limit exceed
报错: 分析原因: 先从列表页面跳转到详细页面时,使用了Navigator标签,open-type默认使用的navigate,跳转时会保留当前页, <navigator class=" ...
- 换人!golang面试官:连怎么避免内存逃逸都不知道?
问题 怎么避免内存逃逸? 怎么答 在runtime/stubs.go:133有个函数叫noescape.noescape可以在逃逸分析中隐藏一个指针.让这个指针在逃逸分析中不会被检测为逃逸. // n ...
- oracle ora-01114 IO error writing block to file 207 (block # )
oracle ORA-01114 IO error writing block to file 207 (block # ) Reference: https://stackoverflow.com/ ...
- 华硕主板开机无法进入BIOS
先说下本人情况,自己组装的台式机,华硕TUF B550M-Plus (wifi)的主板,CPU是锐龙 4650G(带核显),其他配件不涉及问题就不提了. 原来用独显的时候,没啥问题,开机有品牌logo ...
- 构造方法和this的作用
一.构造方法概述 构造方法是一个特殊的方法 是创建对象时候调用的方法 方法的名字很特殊:必须和类名保持一致,大小写都要一样 方法没有返回值 方法也没有返回值类型 构造方法无法在外部手动调用 publi ...
- 《C++ Primer》笔记 第5章 语句
空块的作用等价于空语句. case标签必须是整型常量表达式,default也是一种特殊的case标签. 标签不应该孤零零地出现,它后面必须跟上一条语句或者另外一个case标签. 如果在某处一个带有初值 ...
- 【图像处理】使用OpenCV+Python进行图像处理入门教程(三)色彩空间
这篇随笔介绍使用OpenCV进行图像处理的第三章 色彩空间. 3 色彩空间 之前的介绍,大多是基于BGR色彩空间进行的,但针对不同的实际情况,研究人员提出了许多色彩空间,它们都有各自擅长处理的领域. ...
- docker 部署mysql服务之后,执行sql脚本
1,先将.sql文件copy到docker容器里 docker ps //找到容器的短ID或者指定的name. docker inspect -f '{{.Id}}' id or name 得到指定 ...
- 浅谈Dotnet的数据定位和匹配
Dotnet里,数据定位和匹配的相关编程现在变得很舒服. 最近项目紧,还要不停出差. 所以,写个短点的.最近经常用到的内容:数据定位和匹配. 数据定位 假设我们有这样一个数组: var arr ...