Java H2嵌入式模式-删除给出列的命令未找到错误

Java H2嵌入式模式-删除给出列的命令未找到错误,java,sql,h2,Java,Sql,H2,我对H2DB有点陌生,从我在几个示例和官方文档中看到的情况来看,我成功地启动了一个连接并将值插入到数据库中。 现在,DELETE命令每次都会给我一个列notfound错误[42122],并且条目不会被删除。 此错误仅在使用条件DELETE语句时发生,而不是在从表中删除所有项时发生 该表的创建如下所示 try { Class.forName("org.h2.Driver"); Connection conn = DriverManager.getConnection("jdbc:

我对H2DB有点陌生,从我在几个示例和官方文档中看到的情况来看,我成功地启动了一个连接并将值插入到数据库中。 现在,DELETE命令每次都会给我一个列notfound错误[42122],并且条目不会被删除。 此错误仅在使用条件DELETE语句时发生,而不是在从表中删除所有项时发生

该表的创建如下所示

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);
}

创建表SCHEDULENAME VARCHAR40,数字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);
}

我自己终于明白了

下面是Java中更新的代码行

字符串remove_show=DELETE FROM SCHEDULE,其中NAME='+NAME+'和NUMBER=+NUMBER


不知怎么的,这是可行的。我不知道我做错了什么,但它是固定的

请向我们展示计划表的CREATE TABLE语句。CREATE TABLE SCHEDULENAME VARCHAR40,编号INT@一匹没有名字的马,请帮忙。我已经添加了您所需的信息。