একটি রো’র ডাটা টাইপের উপর নির্ভর করে, এটি শুধু কিছু অল্প কিছু বা অধিক কলাম ব্যবহার করতে পারে। অধিকন্তু ভিন্ন কলামের মধ্যে থাকা ডাটা ডাটা টাইপের উপর নির্ভর করে। সকল সম্ভাব্য ডাটা টাইপের জন্য সকল সম্ভাব্য কলাম পাওয়া নিশ্চিত করতে, আপনার প্রজেকশনে সকল কলাম নাম যুক্ত করার প্রয়োজন। সব সময় Data. ID উদ্ধার করুন যদি একটি ListView এ রেজাল্ট Cursor বেধে রাখেন; অন্যথায় বাধ্যবাধকতা কাজ করবে না। এছাড়াও Data.MIMETYPE উদ্ধার করুন যাতে আপনি যে রো উদ্ধার করেছেন তার প্রতিটার ডাটা টাইপকে চিহ্নিত করতে পারেন। উদাহরণস্বরূপ:
private static final String PROJECTION =
{
Data._ID,
Data.MIMETYPE,
Data.DATA1,
Data.DATA2,
Data.DATA3,
Data.DATA4,
Data.DATA5,
Data.DATA6,
Data.DATA7,
Data.DATA8,
Data.DATA9,
Data.DATA10,
Data.DATA11,
Data.DATA12,
Data.DATA13,
Data.DATA14,
Data.DATA15
};
এই প্রজেকশন ContactsContract.Data ক্লাসের মধ্যে নির্ধারিত কলাম নাম ব্যবহার করেContactsContract.Data টেবিলের মধ্যে একটি রো’র জন্য সকল কলাম উদ্ধার করে।
ঐচ্ছিকভাবে, আপনি ContactsContract.Data ক্লাসের মধ্যে নির্ধারিত বা এই ক্লাস কর্তৃক পরাম্পরাভাবে প্রাপ্ত অন্য কলামও ব্যবহার করতে পারেন। উল্লেখ্য যে SYNC4 হয়ে SYNC1 বোঝায় যে এটা সিঙ্ক অ্যাডাপটর কর্তৃক ব্যবহৃত হচ্ছে, তাই তাদের যাটা গুরুত্বপূর্ন নয়।