Comme le dit la documentation, il est utilisé pour ?
marqueurs dans votre chaîne de requête. Par exemple, vous pouvez utiliser ceci :
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"Talib"});
L'utilisation de marqueurs de paramètres est très importante pour éviter l'injection SQL. Par exemple,
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"' OR '' = '"});
ne supprimera pas toutes les lignes de votre tableau, mais si vous l'avez fait naïvement
SQLiteDatabase.delete("users", "user_name = '" + userName + "'");
et userName
a été défini sur "' OR '' = '"
, ce serait en effet atomiser toute votre table.