面对从数据库到表显示元素的问题

时间:2019-01-08 14:12:53

标签: java sqlite javafx

我正在尝试创建一个桌面应用程序,在其中添加/删除等。我的员工。我将SQLite用于数据库,将JavaFX / Scene构建器用于应用程序。所以我创建了一个包含4列的TableView。对于每一列,我都提供了他们的个人ID。但是,我在窗口中看不到信息。另外,我收到一个错误:

  

出了点问题... [SQLITE_ERROR] SQL错误或数据库丢失(“ VALUES”附近:语法错误)

猜猜我有什么数据库-甚至不是空的。 enter image description here

这是我代码的一部分,我试图从数据库中获取信息并显示在屏幕上。

@FXML
private void pasalintiDarbuotojaVeiksmas() {
    try {
        Connection conn = DriverManager.getConnection("jdbc:sqlite:D:\\db\\darbuotojuDB.db");
        Statement statement = conn.createStatement();
        String insert = "SELECT * FROM darbuotojai  (Vardas, Pavarde, Amzius, Kalba) VALUES ("+ dVardas + " " + dPavarde + " " + dAmzius + " " + dKalba + ")";
        int a = statement.executeUpdate(insert);
        statement.close();
    } catch (SQLException e) {
        System.out.println("Something went wrong..." + e.getMessage());
    }
}

这是我要在其中查看数据库中所有信息的表。 enter image description here

2 个答案:

答案 0 :(得分:0)

您遇到语法错误。您的insert行应如下所示:

String insert = "INSERT INTO darbuotojai (Vardas, Pavarde, Amzius, Kalba) VALUES ("+ dVardas + ", " + dPavarde + ", " + dAmzius + ", " + dKalba + ")";

或者如果您想从数据库获取数据:

String select = "SELECT * FROM darbuotojai"; ResultSet rs = stmt.executeQuery(select);

答案 1 :(得分:0)

尝试更改字符串插入:String insert = String.format("SELECT * FROM darbuotojai (Vardas, Pavarde, Amzius, Kalba) VALUES (%s,%s,%s,%s)", dVardas,dPavarde,dAmzius,dKalba);