从表中删除所有行,抛出nullpointer

Ski*_*zit 9 sqlite android

我正在尝试编写一个函数来删除给定表中的每一行但我得到一个空指针异常.有人能指出我正确的方向吗?这是代码......

   public void deleteall(){
    SQLiteDatabase db = tweets.getWritableDatabase();
    String delete = "TRUNCATE FROM tweets";
    db.rawQuery(delete, null);

      }
Run Code Online (Sandbox Code Playgroud)

Pen*_*m10 57

检查是否tweets为空.

我认为使用这个调用比使用rawQuery更简单.您的rawQuery必须被解析,但是使用delete方法它已经使用了参数化查询.

db.delete('tweets',null,null);
Run Code Online (Sandbox Code Playgroud)

  • 仍然得到一个nullpointer,我正在使用你在另一个问题中帮助我的count方法检查行是否> 1如果是,那么我正在执行该方法.但是我仍然得到一个空指针,我假设我正在以错误的方式解决这个问题..他们是检查空表的更好方法吗? (2认同)

Pat*_*man 11

只是删除所有行,您可以使用以下方法.

void deleteAll()
{
    SQLiteDatabase db= this.getWritableDatabase();
    db.delete(table_name, null, null);

}
Run Code Online (Sandbox Code Playgroud)