我是H2 DB的新手,从我在几个示例和官方文档中看到的,我设法启动连接并将值插入到DB中。 现在,DELETE命令每次都给我一个COLUMN NOT FOUND错误[42122]并且不删除该条目。 仅当使用条件DELETE语句时才会发生此错误,而不是在删除表中的所有条目时发生此错误。
该表创建如下
CREATE TABLE SCHEDULE(NAME VARCHAR(40), NUMBER INT);
我的Java代码如下
try {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection("jdbc:h2:~/test", "sa", "");
System.out.println("CONNECTED");
Statement stat = conn.createStatement();
if (remember_entry.isSelected()) {
String add_entry = "INSERT INTO SCHEDULE VALUES ('" + name + "'," + number + ")";
System.out.println(add_entry);
stat.execute(add_entry);
System.out.println("ENTRY ADDED");
} else if (!remember_entry.isSelected()) {
String remove_entry = "DELETE FROM SCHEDULE WHERE NAME = '" + name + "' AND number = " + number;
System.out.println(remove_entry);
stat.execute(remove_entry);
System.out.println("ENTRY REMOVED");
}
conn.close();
} catch (Exception e) {
System.out.println(e);
}
答案 0 :(得分:0)
终于弄明白了。
以下是Java中更新的代码行。
String remove_show = "DELETE FROM SCHEDULE WHERE NAME = '" + name + "' AND NUMBER = " + number;
不知何故,这才有效。我不知道我做错了什么,但它已经修好了。 :)