আপনি যে ডাটা চান তা নির্দিষ্ট করতে, টেক্টট এক্সপ্রেশন এবং ভেরিয়েবল এর একটি সম্মিলন তৈরী করুন যা প্রভাইডারকে বলবে ডাটা কলাম সার্চ করতে এবং ভ্যালু হচ্ছে খোঁজার জন্য।
টেক্সট এক্সপ্রেশনের জন্য, একটি কনস্ট্যান্ট নির্ধারণ করুন যা সার্চ কলাম লিস্ট করে। এই এক্সপ্রেশন ভ্যালুকেও ধারন করতে পারে, একটি পছন্দনীয় চর্চা হচ্ছে ভ্যালুকে একটি "?" প্লেসহোল্ডার দিয়ে পরিবেশন করা। উদ্ধারের সময় প্লেসহোল্ডার বিন্যাসের ভ্যালুর সাথে প্রস্থিাপিত হয়। একটি "?" কে প্লেসহোল্ডার হিসাবে ব্যবহার করা নিশ্চিত করে যে সার্চ নির্দিষ্টকরণ SQL শ্রেণীবিন্যাস দ্বারা নয় বরং বাইন্ডিং দ্বারা তৈরী হয়। এই চর্চা বিদ্বেষপরায়ন SQL ইনজেকশনের সম্ভাবনাকে বিলোপ করে:
// Defines the text expression
@SuppressLint("InlinedApi")
private static final String SELECTION =
Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB ?
Contacts.DISPLAY_NAME_PRIMARY + " LIKE ?" :
Contacts.DISPLAY_NAME + " LIKE ?";
// Defines a variable for the search string
private String mSearchString;
// Defines the array to hold values that replace the ?
private String[] mSelectionArgs = { mSearchString };