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_处理查询结果集的更多相关文章

  1. Eclipse中java获得mysql的查询结果集

    不废话,先上代码,再上解释说明 package com.ningmeng; import java.sql.*; /** * 1:获取查询结果集 * @author biexiansheng * */ ...

  2. mysql 根据查询结果集更新

    声明:  MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得  其本质还是更新的数据需要查询获得. 例如: use ...

  3. SQL Server的优化器会缓存标量子查询结果集吗

    在这篇博客"ORACLE当中自定义函数性优化浅析"中,我们介绍了通过标量子查询缓存来优化函数性能: 标量子查询缓存(scalar subquery caching)会通过缓存结果减 ...

  4. mysql把查询结果集插入到表理

    把表B的内容插入到表A INSERT INTO 1111_0 SELECT*FROM report_0 把查询结果集插入到表中 insert into A(a,b,c) select from B(a ...

  5. Spring JdbcTemplate 查询结果集Map反向生成Java实体(转)

    原文地址:Spring JdbcTemplate 查询结果集Map反向生成Java实体 以前写过一篇文章吐槽过Spring JdbcTemplate的queryForList方法(参见:http:// ...

  6. Oracle 如何循环查询结果集,进行新增或修改

    Oracle的PL/SQL中怎样循环查询的结果集,然后根据查询结果进行判断,是新增或修改操作 loop循环例子 for item in (select a,b,c from table_a where ...

  7. SELECT查询结果集INSERT到数据表

    简介 将查询语句查询的结果集作为数据插入到数据表中. 一.通过INSERT SELECT语句形式向表中添加数据 例如,创建一张新表AddressList来存储班级学生的通讯录信息,然后这些信息恰好存在 ...

  8. 完整的jdbc查询结果集编码

    public static ArrayList<HashMap<String,Object>> query(Connection conn,String sql, Object ...

  9. CASE函数 sql server——分组查询(方法和思想) ref和out 一般处理程序结合反射技术统一执行客户端请求 遍历查询结果集,update数据 HBuilder设置APP状态栏

    CASE函数   作用: 可以将查询结果集的某一列的字段值进行替换 它可以生成一个新列 相当于switch...case和 if..else 使用语法: case 表达式/字段 when 值 then ...

随机推荐

  1. python进阶(1)Lambda表达式

    Lambda表达式 lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数 语法 函数名 = lambda 参数:返回值 注意点 1.函数的参数可以有多个,多个参数之间用逗号隔 ...

  2. 微信小程序:解决小程序中有些格式如webpiPhone手机暂不支持的问题

    问题:小程序中有些格式是iPhone手机暂不支持的,如goods_introduce中的webp格式,在小程序的模拟器中是可以正常显示webp格式的,但是一旦你做真机调试,很可能某些iPhone手机是 ...

  3. JVisualVM监控JVM-外网服务器

    环境说明: a:阿里云服务器Centos8.2 b:JDK1.8 1:增加JMV运行参数 java -jar 启动时添加一下参数: -Djava.rmi.server.hostname=外网IP地址 ...

  4. MYSQL 悲观锁和乐观锁简单介绍及实现

    1:悲观锁 1.1 特点: 每次查询都会进行锁行,怕"其他人"进行数据的修改. 1.2 实现步骤: 步骤1:开启事务test1,并对id=2的记录进行查询,并加锁,如:   步骤2 ...

  5. CSS实现页面切换时的滑动效果

    最近在开发手机端APP页面功能时遇到一个需求:某个页面查询的数据有三种分类,需要展示在同一页面上,用户通过点击分类标签来查看不同类型的数据, 期望效果是 用户点击标签切换时另一个页面能够以一个平滑切入 ...

  6. Java基础语法:运算符

    Java 运算符(operator)根据功能分类: 算术运算符:+,-,*,/,%,++,-- 赋值运算符:= 关系运算符:>,<,>=,<=,==,!=,instanceof ...

  7. Dubbo之高级特性

    Dubbo 注意当启动服务时,该服务会占用本机一个端口号,故在一台电脑启动多个服务时需要在配置文件中更占用本机的端口号 <!--服务占用本机的端口-当本机启动多个服务时须保持不同--> & ...

  8. 在Windows服务中添加定时器

    创建windows服务: 在VisualStudio中用C#创建一个Windows服务,微软MSDN参考地址: http://msdn.microsoft.com/zh-cn/library/zt39 ...

  9. pytorch(08)数据模型的读取(2)

    import numpy as np import torch import os import random from PIL import Image from torch.utils.data ...

  10. .zip爆破

    .zip爆破 Python的优化问题 Python在计算密集型任务方面没有明显的多线程优化,多线程更加适合用于处理I/O密集型任务(如网络请求).爆破任务使用顺序执行即可. 编写Python脚本 一个 ...