Java如何从ResultSet中检索值?

这是有关如何ResultSet通过在数据库中执行SQL查询来从返回的数据中读取数据的另一个示例。

我们首先创建与数据库的连接。创建一个PreparedStatement以执行查询以从books表中获取一些数据。

执行完之后,PreparedStatement我们将有一个ResultSet对象。要迭代中的所有数据,ResultSet我们next()在while循环中调用方法。当没有更多记录可读取该方法时,返回false。该ResultSet对象还提供了一些读取字段值的方法,该方法的名称与表的每个字段上存储的数据类型相对应。

读取使用的数据ResultSet的方法(例如getString(),getInt(),getFloat(),等),我们可以使用列名或字段的列索引中的SQL语句读取。

让我们看下面的完整代码片段:

package org.nhooo.example.jdbc;

import java.sql.*;

public class ResultSetExample {

    public static void main(String[] args) throws Exception {

        String url = "jdbc:mysql://localhost/nhooo";

        String username = "root";

        String password = "";

        try (Connection connection =

                 DriverManager.getConnection(url, username, password)) {

            String query = "SELECT isbn, title, published_year, price " +

                "FROM books";

            PreparedStatement ps = connection.prepareStatement(query);

            ResultSet rs = ps.executeQuery();

            while (rs.next()) {

                // 使用列名读取值

                String isbn = rs.getString("isbn");

                String title = rs.getString("title");

                int publishedYear = rs.getInt("published_year");

                // 使用列索引读取值

                double price = rs.getDouble(4);

                System.out.printf("%s, %s, %d, %.2f\n", isbn, title,

                    publishedYear, price);

            }

        }

    }

}

Maven依赖

<!-- https://search.maven.org/remotecontent?filepath=mysql/mysql-connector-java/8.0.17/mysql-connector-java-8.0.17.jar -->

<dependency>

    <groupId>mysql</groupId>

    <artifactId>mysql-connector-java</artifactId>

    <version>8.0.17</version>

</dependency>

以上是 Java如何从ResultSet中检索值? 的全部内容, 来源链接: utcz.com/z/326341.html

回到顶部