我正在研究一个Android项目,我必须删除表格中的所有记录:
public void deleteAll(){
SQLiteDatabase db=this.getWritableDatabase();
String req="delete * from "+ TABLE_ENIGME;
db.execSQL(req);
}
但是当我调用我的函数 deleteAll 时,会发现这个异常:
android.database.sqlite.SQLiteException: near "*": syntax error: delete * from enigme2
为什么“*”是不合适的?
答案 0 :(得分:6)
答案 1 :(得分:4)
主要是因为那是无效的sql语法。只是省略了明星并做了
delete from enigme2;
答案 2 :(得分:2)
这是不合适的,因为它不是有效的SQL语法。 *
用于表示“所有列”(在选择时)。由于DELETE语句正在删除整行,表明“所有列”没有意义,因为默认情况下它会删除该行的所有列中的值。