繁体   English   中英

SQLiteLog:(1)在“ *”附近:语法错误

[英]SQLiteLog﹕ (1) near “*”: syntax error

SQLiteLog﹕ (1) near "*": syntax error遇到SQLiteLog﹕ (1) near "*": syntax error从表中删除行时,以下代码中SQLiteLog﹕ (1) near "*": syntax error 。代码有什么问题,为什么我得到此错误?

 public void deleteVideo(String key){
            String selectQuery = "DELETE  * FROM " + TABLE_TOW + " WHERE " + KEY_ID + "= '"+key;

            SQLiteDatabase db = this.getWritableDatabase();
            db.rawQuery(selectQuery, null);
        }

应该是"Delete from........"而不是"Delete * from........" 因为您犯了语法问题

single quote (')传递值并从查询中删除*

最后:

String selectQuery = "DELETE FROM " + TABLE_TOW + " WHERE " + KEY_ID + "='"+key+"'";

从查询中删除*

更新的代码

public void deleteVideo(String key){
    String selectQuery = "DELETE  FROM " + TABLE_TOW + " WHERE " + KEY_ID + "= '"+key+"'";
    SQLiteDatabase db = this.getWritableDatabase();
    db.rawQuery(selectQuery, null);
}

文献资料

DELETE不需要使用星号。 实际上,这是无效的。 DELETE FROM函数将删除整个行。 由于子句只能删除整行,因此无法指定要删除的列。

您无法真正“删除”一个单元格。 您可以设置为空( '' ),或NULL

如果您需要专门编辑某些列的内容,建议使用UPDATE table SET a = 'b' WHERE id = 'some number'子句

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM