2011-09-05 80 views
1

以前我選擇了所有的東西都放了一個null,但我得到一個錯誤,抱怨它有太多的行,所以我試圖得到顯示名稱,聯繫人ID和投影電話號碼,但得到以下錯誤: 「列‘_id’不存在」Android列'_id'不存在

下面的代碼:

final String[] projection = { ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, 
      ContactsContract.CommonDataKinds.Phone.NUMBER,ContactsContract.CommonDataKinds.Phone.CONTACT_ID }; 

    Cursor cur = cr.query(
      ContactsContract.CommonDataKinds.Phone.CONTENT_URI, projection, 
      "LENGTH(" + ContactsContract.CommonDataKinds.Phone.NUMBER 
        + ") >= 8) GROUP BY (" 
        + ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, null, 
      sortOrder); 

但錯誤指向這一行我customadapter

super(context, layout, c, from, to); 

需要幫助!謝謝!

+0

您是否使用光標適配器? – Richa

回答

1

android需要_id列,因此在您的查詢中包含您的專用密鑰列。

你可以像這樣重命名結果欄中:

「從表中選擇PRIMARYKEYCOLUMN爲_id,BLA,BLUBB」

0

查看查詢。您可能會錯誤地寫column_id來代替contact_id,否則它不會顯示此類型的錯誤。

相關問題