0

サービスを使用して5分ごとにサーバーデータの表を更新しています。テーブル内のすべてのデータをクリアしてからサーバーから新しいデータを更新したいので、テーブルを更新してデータをクリアする前にこのコードを使用しています。

public boolean deleteServerData() {
    SQLiteDatabase db = this.getWritableDatabase();
    if (getServerDataCount() > 0) {
        if (db.delete(TABLE_SERVER_CONTACTS, null, null) > 0)
            return true;
        else
            return false;
    } else
        return true;
}

しかし、削除する前にテーブルの行を数えると、「13」と表示され、削除するとゼロになりますが、テーブルデータを見ると、まだそこにあり、更新されたデータがテーブルに追加されているため、テーブルはできません。データをすべてクリアします。

解決策があるか、コードで私が間違いを犯したかどうかを教えてください。

4

1 に答える 1

1

execSQLを試してください:

db.execSQL("DELETE FROM "+ TABLE_SERVER_CONTACTS);
于 2012-08-14T11:58:56.577 に答える