📜  HSQLDB-选择查询(1)

📅  最后修改于: 2023-12-03 14:41:44.974000             🧑  作者: Mango

HSQLDB 选择查询

HSQLDB 是一个基于 Java 的轻量级嵌入式关系数据库,具有高度的可移植性和易于使用。在本文中,我们将探讨 HSQLDB 的选择查询。

连接数据库

在进行选择查询之前,我们需要先连接到 HSQLDB 数据库。我们可以使用 JDBC API 和 HSQLDB JDBC 驱动程序来实现。以下是连接示例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class HSQLDBExample {
    public static void main(String[] args) {
        Connection connection = null;
        try {
            // 加载HSQLDB JDBC驱动程序
            Class.forName("org.hsqldb.jdbc.JDBCDriver");
            // 连接HSQLDB数据库
            connection = DriverManager.getConnection("jdbc:hsqldb:mem:mymemdb", "SA", "");
            System.out.println("成功连接到HSQLDB数据库");
        } catch (ClassNotFoundException e) {
            System.out.println("未找到HSQLDB JDBC驱动程序");
        } catch (SQLException e) {
            System.out.println("无法连接到HSQLDB数据库");
            e.printStackTrace();
        } finally {
            try {
                if (connection != null) {
                    connection.close();
                }
            } catch (SQLException e) {
                System.out.println("无法关闭数据库连接");
                e.printStackTrace();
            }
        }
    }
}
执行选择查询

完成连接操作后,我们就可以执行选择查询了。选择查询通常使用 SELECT 关键字开始,并跟随若干列和表达式,最后可能还包含 FROMWHERE 和其他子句。以下是一个选择查询的示例:

SELECT name, age, gender FROM users WHERE age >= 18;

该查询将返回所有年龄大于等于 18 岁的用户的姓名、年龄和性别。在 Java 中执行此查询的示例代码如下:

import java.sql.*;

public class SelectQueryExample {
    public static void main(String[] args) {
        Connection connection = null;
        Statement statement = null;
        ResultSet resultSet = null;
        try {
            // 加载HSQLDB JDBC驱动程序
            Class.forName("org.hsqldb.jdbc.JDBCDriver");
            // 连接HSQLDB数据库
            connection = DriverManager.getConnection("jdbc:hsqldb:mem:mymemdb", "SA", "");
            // 创建用于执行SQL语句的Statement对象
            statement = connection.createStatement();
            // 执行选择查询
            resultSet = statement.executeQuery("SELECT name, age, gender FROM users WHERE age >= 18");
            // 处理查询结果集
            while (resultSet.next()) {
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                String gender = resultSet.getString("gender");
                System.out.println(name + ", " + age + ", " + gender);
            }
        } catch (ClassNotFoundException e) {
            System.out.println("未找到HSQLDB JDBC驱动程序");
        } catch (SQLException e) {
            System.out.println("无法连接到HSQLDB数据库");
            e.printStackTrace();
        } finally {
            try {
                if (resultSet != null) {
                    resultSet.close();
                }
                if (statement != null) {
                    statement.close();
                }
                if (connection != null) {
                    connection.close();
                }
            } catch (SQLException e) {
                System.out.println("无法关闭数据库连接");
                e.printStackTrace();
            }
        }
    }
}
结论

HSQLDB 的选择查询功能非常强大,可以让程序员通过 SQL 语言轻松地查询数据库中的数据。结合 JDBC API 和 HSQLDB JDBC 驱动程序,我们可以在 Java 中实现选择查询功能。