J'essaie d'écrire une fonction qui supprimera chaque rangée dans une table donnée, mais je reçois une exception Null Pointer. Quelqu'un pourrait-il me diriger dans la bonne direction? Voici le code ...
public void deleteall(){
SQLiteDatabase db = tweets.getWritableDatabase();
String delete = "TRUNCATE FROM tweets";
db.rawQuery(delete, null);
}
6 Réponses :
Vérifiez si Je pense qu'il est plus simple d'utiliser cet appel que d'utiliser RawQuery.
Votre rawquery doit être analysé, mais en utilisant la méthode de suppression utilisée déjà une requête paramétralisée. P> Tweets code> est NULL.
Obtenez toujours un NullPoinger, j'utilise la méthode du compte que vous m'avez aidé dans une autre question à vérifier si des lignes> 1 Si c'est alors j'exécute cette méthode. Mais je reçois toujours un pointeur nul, je suppose que je vais dans ce mauvais sens .. est leur meilleure façon de vérifier une table null?
Vérifiez le adb logcat code> ou DDMS code> pour voir ce qui provoque le pointeur NULL. Je pense que vous avez d'autres choses null là-bas. Brighthub.com/mobile/google-Adroid/articles/25023.cx < / a>
sqlite n'a pas d'instruction code> tronquer code>, vous devez donc faire:
public void deleteall(){
SQLiteDatabase db = tweets.getWritableDatabase();
String delete = "DELETE FROM tweets";
db.rawQuery(delete, null);
}
Juste pour supprimer toutes les lignes, vous pouvez utiliser la méthode suivante. vide DeleteLl () {SQLITEDATABASE DB = Ceci.getwRITratabase (); db.delete (Nom de table, null, null); }
Juste pour supprimer toutes les lignes, vous pouvez utiliser la méthode suivante.
void deleteAll()
{
SQLiteDatabase db= this.getWritableDatabase();
db.delete(table_name, null, null);
}
dataBaseHelper = new DataBaseHelper(getApplicationContext(), DataBaseHelper.DataBaseName, null, 1);
sqLiteDatabase = dataBaseHelper.getWritableDatabase();
if (sqLiteDatabase != null) {
sqLiteDatabase.delete(DataBaseHelper.TableName, null, null);
Toast.makeText(MainActivity.this, "Refresh", Toast.LENGTH_SHORT).show();
} else
Toast.makeText(MainActivity.this, "Error", Toast.LENGTH_SHORT).show();
break;
}
Je reçois une exception de pointeur nulle, puis j'ai réalisé que ma méthode n'appelle pas db.open () code> d'abord. Ajouté que (et db.close () code>) et cela a fonctionné. P>
La bonne réponse est la suivante: de la documentation officielle Android: SQLITEDATABASE P> P>