不废话,先上代码,再上解释说明
package com.ningmeng;
import java.sql.*;
/**
* 1:获取查询结果集
* @author biexiansheng
*
*/
public class Test03 {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("加载数据库驱动成功");
String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
String user="root";//数据库账号
String pass="123456";//数据库密码
//建立数据库连接,获得连接对象conn
Connection conn=DriverManager.getConnection(url,user,pass);
System.out.println("数据库连接成功");
Statement stmt=conn.createStatement();//创建一个Statement对象
String sql="select * from users";//生成一条sql语句
ResultSet rs=stmt.executeQuery(sql);//执行查询,把查询结果赋值给结果集对象
int id,age,sex;//声明3个变量分别为id,age,sex
String username,password;//声明2个变量分别为用户名,密码
System.out.println("id\t 用户名\t 密码 \t 年龄\t 性别");//其中\t相当于8个空格
while(rs.next()){//遍历结果集
id=rs.getInt("id");//获得id
username=rs.getString(2);//
password=rs.getString("password");//
age=rs.getInt(4);//
sex=rs.getInt(5);//
System.out.println(id+"\t"+username+"\t"+password+"\t"+age+"\t"+
sex+"\t");
}
System.out.println("获得查询结果集");
conn.close();
System.out.println("关闭数据库连接对象");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//加载数据库驱动
catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
结果如下所示
1:Result接口类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集。
2:PreparedStatement接口中的excuteQuery()方法,在此PreparedStatement对象执行sql查询语句,返回结果为查询结果集Result对象
3:next()将指针向下移一行
4:ResultSet对象的getXXX()方法可获取查询结果集中数据。由于ResultSet中保存的数据是表的形式,因此可通过使用getXXX()方法指定列的序号与列的名称。
id=rs.getInt("id");//获得id
username=rs.getString(2);//
password=rs.getString("password");//
age=rs.getInt(4);//
sex=rs.getInt(5);//
仔细体会就可以明白,getXXX(参数);参数既可以是列的名称还可以是第几列的数字。
mysql 根据查询结果集更新
声明: MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得 其本质还是更新的数据需要查询获得. 例如: use ...
Eclipse中java向数据库中添加数据,更新数据,删除数据
前面详细写过如何连接数据库的具体操作,下面介绍向数据库中添加数据. 注意事项:如果参考下面代码,需要 改包名,数据库名,数据库账号,密码,和数据表(数据表里面的信息) package com.ning ...
eclipse中java项目的build path详解
BuildPath中只支持加入jar文件,具体方法如下:在eclips里在工程名上右键->build path->contigure bud path->java build pat ...
Eclipse中Java项目转换为Web项目
刚创建完的Java Project是这样的 右键项目名,找到这个地方 修改下方的 Default output folder 为 Vehicle-Report/WebContent/WEB-INF/c ...
eclipse中java项目的build path详解(转载)
BuildPath中只支持加入jar文件,具体方法如下:在eclips里在工程名上右键->build path->contigure bud path->java build pat ...
Eclipse中Java文件图标由实心J变成空心J的问题
在eclipse中空心J的java文件,表示不被包含在项目中进行编译,而是当做资源存在项目中.例如 当是单个文件为空心J的时候 1.右击该文件 -- >BuildPath -->Inclu ...
Eclipse中Java build path的使用
1.Eclipse中,工程属性的Java Build Path的Library标签页下,有如下几个按钮:Add Jars...添加JAR包,是指本Eclipse当前包含的工程中的,在工程列表下选取即可 ...
Eclipse 中 Java 代码报版本错误的问题
今天碰到了eclipse中的代码一直报错,后来发现是编译环境的问题,记录一下. 项目build path的JDK版本是开发的时候编译器需要使用到的,例如,如果用的JDK1.4就不能使用泛型. 而jav ...
Eclipse 中java跨工程调用类
在Eclipse中,有时候需要跨工程调用其他工程中的方法.如下面有两个Java Project : 如果要在A工程中调用B工程中的类,可以将B工程添加到A工程中: A---- >Build Pa ...
随机推荐
OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...
ECMAScript
在Javascript中,万物皆对象,但对象也有区别,大致可以分为两类,即:普通对象(Object)和函数对象(Function). 一般而言,通过new Function产生的对象是函数对象,其他对 ...
FineUI v3.3.1 发布了!
关于FineUI基于 ExtJS 的专业 ASP.NET 控件库. FineUI的使命创建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No We ...
[Skills] 在桌面打开一个BAT文件,CMD窗口不关闭
每次开机都要取得本机IP,然后远程连接上去,屏幕太小,不好输入,想写个bat,执行就能看到IP,并且停留在cmd窗口上,想来简单,以前搜了好久没找到好的办法,今天找到一个贴子,竟然可以,呵呵! 以 ...
js轮播
File类与FileInfo类区别
ile类是静态的,FileInfo不是静态的也没有静态的方法,仅可用于实例化的对象.FileInfo方法基本类似于File.关于二者,作何选择. ● 如果仅进行单一方法调用,则可以使用静态File类上 ...