जैसा कि प्रलेखन कहता है, इसका उपयोग ?
. के लिए किया जाता है आपकी क्वेरी स्ट्रिंग में मार्कर। उदाहरण के लिए, आप इसका उपयोग कर सकते हैं:
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"Talib"});
SQL इंजेक्शन से बचने के लिए पैरामीटर मार्कर का उपयोग बहुत महत्वपूर्ण है। उदाहरण के लिए,
SQLiteDatabase.delete("users", "user_name = ?", new String[] {"' OR '' = '"});
आपकी तालिका की सभी पंक्तियों को नहीं हटाएगा, लेकिन यदि आपने भोलेपन से किया है
SQLiteDatabase.delete("users", "user_name = '" + userName + "'");
और userName
"' OR '' = '"
. पर सेट किया गया था , जो वास्तव में आपकी पूरी तालिका को न्यूक कर देगा।