Zoals de documentatie zegt, wordt het gebruikt voor ?
markeringen in uw queryreeks. U kunt dit bijvoorbeeld gebruiken:
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"Talib"});
Het gebruik van parametermarkeringen is erg belangrijk om SQL-injectie te voorkomen. Bijvoorbeeld,
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"' OR '' = '"});
zal niet alle rijen van uw tabel verwijderen, maar als u dat naïef deed
SQLiteDatabase.delete("users", "user_name = '" + userName + "'");
en userName
was ingesteld op "' OR '' = '"
, dat zou inderdaad je hele tafel vernietigen.