[英]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.