编译DELETE FROM表时没有这样的列

时间:2013-05-13 07:06:45

标签: sqlite

我收到类似“编译DELETE FROM表时没有这样的列”的错误。 请帮忙

public String getData() {


    String[] columns = new String []{KEY_ROWID, KEY_HEADER, KEY_QUOTE_VALUE};


    Cursor c = ourDatabase.query(DATABASE_TABLE, columns, null, null, null, null, null);
    String result = "";

    int iRow = c.getColumnIndex(KEY_ROWID);
    int iHeader = c.getColumnIndex(KEY_HEADER);
    int iQuote_value = c.getColumnIndex(KEY_QUOTE_VALUE);

    for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){
        result = result + c.getString(iRow)+ "@" +c.getString(iHeader)+ ":" +c.getString(iQuote_value)+ ":";
    }

    return result;

}

public void deleteEntry(String Deldata1) throws SQLException {
        ourDatabase.delete(DATABASE_TABLE, KEY_HEADER + "=" + Deldata1 , null);

}

}

请帮帮我

1 个答案:

答案 0 :(得分:0)

Deldata1变量可能未初始化为带引号的字符串。

在删除调用之前,在deleteEntry函数中打印KEY_HEADER和Deldata1的值。

Atleast one应该是数据库中表的名称。另一个可以是表名或带引号的字符串。