从相邻的单元格中获取数据 - MS Access - Java

时间:2015-05-19 05:05:24

标签: java database swing ms-access

我正在为大学图书馆编写Java Swing程序。该程序连接到MS Access数据库。

enter image description here

该程序有JTextField,其中"数字"必须输入。在TextField下面,有一个JButton。输入数字并单击按钮后,我希望程序打印出相应的"部门"

例如:

enter image description here

当用户输入数字" 3"在JTextField中点击“输入”按钮。 按钮,我希望我的程序打印出来" Computers"即来自相邻单元格的数据。

我如何实现这一目标?提前谢谢!

1 个答案:

答案 0 :(得分:2)

首先看一下JDBC Database Access

您需要一个用于MS Access的JDBC驱动程序,UCanAccess是合理的流行。

然后你需要:

  1. 加载JDBC驱动程序
  2. 连接数据库
  3. 执行一个SQL查询,可以根据您的标准选择所需的数据
  4. 从结果数据集中检索数据
  5. 例如......

    try {
        Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
        try (Connection conn = DriverManager.getConnection("jdbc:ucanaccess://<mdb or accdb file path>", user, password)) {
            try (PreparedStatement stmt = conn.prepareStatement("SELECT department FROM Table1 WHERE ID = ?")) {
                stmt.setInt(1, 3); // Use a variable for the ID
                try (ResultSet rs = stmt.executeQuery()) {
                    // We're only expecting a single row...
                    if (rs.next()) {
                        String department = rs.getString(1);
                    }
                }
            }
        } catch (SQLException exp) {
            exp.printStackTrace();
        }
    } catch (ClassNotFoundException exp) {
        exp.printStackTrace();
    }
    

    您可能还想查看SQL Tutorial