【数据库编程】3.ResultSet结果集

1. ResultSet基本介绍

  1. ResultSet表示数据库结果集的数据表,通过执行查询数据库的语句生成。
  2. ResultSet对象保持一个光标指向当前的数据行。最初,光标位于第一行之前。
  3. 调用next方法会将光标移动到下一行,如果在ResultSet对象中没有更多行是返回false,因此使用while循环来遍历结果集。

image-20210810215444898

2.案例

数据表结构如下:

CREATE TABLE `demo` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8

并且在demo表中插入了5条记录:

INSERT INTO demo
VALUES (1, 'alan'),
	(2, 'mike'),
	(3, 'lucy'),
	(4, 'jack'),
	(5, 'mary');

编写Java代码获取到所有数据,并通过while循环遍历打印出所有的数据,代码如下:

@Test
public void testResultSet() throws Exception {
    // 获取值
    Properties properties = new Properties();
    properties.load(new FileInputStream("src\\mysql.properties"));
    String user = properties.getProperty("user");
    String password = properties.getProperty("password");
    String dirver = properties.getProperty("dirver");
    String url = properties.getProperty("url");
    // 注册驱动
    Class.forName(dirver);
    // 得到连接和Statement
    Connection connection = DriverManager.getConnection(url, user, password);
    Statement statement = connection.createStatement();
    // 组织SQL
    String sql = "select * from demo";
    // 执行SQL获得结果集
    ResultSet resultSet = statement.executeQuery(sql);
    
    // 遍历结果集
    while (resultSet.next()) {
        int id = resultSet.getInt("id");
        String name = resultSet.getString("name");
        System.out.println(id + "\t" + name);
    }
    
    // 关闭连接
    resultSet.close();
    statement.close();
    connection.close();
}

得到如下结果:

image-20210810221141893

posted @   爵岚  阅读(249)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示