Android Q(SDK 29)上的“ContentResolver无效列错误”
创始人
2024-08-15 03:30:21
0

在Android Q(SDK 29)上,如果你在使用ContentResolver查询数据时遇到“无效列错误”(Invalid column error),这可能是因为该列不存在或者列名被更改了。

解决方法如下:

  1. 确保你查询的表中确实存在该列。你可以通过查看数据库模式或者表结构来确认。

  2. 如果列名被更改了,你需要更新你的查询语句中的列名。确保列名的大小写和拼写与表中的列名完全匹配。

下面是一个使用ContentResolver查询数据的示例代码:

String[] projection = {
    ContactsContract.Contacts._ID,
    ContactsContract.Contacts.DISPLAY_NAME
};

Uri uri = ContactsContract.Contacts.CONTENT_URI;

Cursor cursor = getContentResolver().query(uri, projection, null, null, null);

if (cursor != null && cursor.moveToFirst()) {
    int idColumnIndex = cursor.getColumnIndex(ContactsContract.Contacts._ID);
    int nameColumnIndex = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);

    do {
        String contactId = cursor.getString(idColumnIndex);
        String contactName = cursor.getString(nameColumnIndex);

        // 处理查询结果
        Log.d(TAG, "Contact ID: " + contactId + ", Name: " + contactName);
    } while (cursor.moveToNext());
}

if (cursor != null) {
    cursor.close();
}

在这个示例中,我们查询了系统联系人的ID和显示名。你可以根据你的需求修改projection数组中的列名,并根据你的数据模型进行处理。

如果你仍然遇到“无效列错误”,请检查你的列名拼写和大小写,并确保列名在表中存在。

相关内容

热门资讯

我来教教大家!陕麻圈延安划水辅... 我来教教大家!陕麻圈延安划水辅助,wepoker插件功能辅助器,扑克教程(有挂实锤)是一款可以让一直...
玩家必看科普!互游辅助,丽水都... 玩家必看科普!互游辅助,丽水都莱辅助软件(好像有挂)1、丽水都莱辅助软件透视辅助软件激活码多个强度级...
分享个大家!小程序牵手跑得有辅... 分享个大家!小程序牵手跑得有辅助器,微乐四川麻将辅助器(果然是真的有挂)1、超多福利:超高返利,海量...
必看攻略!家乡大贰小程序靠谱吗... 必看攻略!家乡大贰小程序靠谱吗,wpk俱乐部怎么作弊,玩家教你(有挂教程)是一款可以让一直输的玩家,...
分享认知!牵手辅助神器下载,微... 分享认知!牵手辅助神器下载,微乐降序自建房辅助app(都是真的是有挂)暗藏猫腻,小编详细说明微乐降序...
2024教程!丽水都莱大菠萝脚... 2024教程!丽水都莱大菠萝脚本辅助,wepoker破解是真的还是假的,新2025教程(揭秘有挂);...
一分钟秒懂!798大菠萝辅助,... 一分钟秒懂!798大菠萝辅助,茶馆游戏辅助(总是是真的有挂)1、金币登录送、破产送、升级送、活动送。...
科技分享!边锋干瞪眼ios辅助... 【福星临门,好运相随】;科技分享!边锋干瞪眼ios辅助微信,佛手大菠萝辅助,必赢方法(新版有挂);暗...
实操分享!微信小程序开发辅助,... 实操分享!微信小程序开发辅助,潮友会辅助(切实真的是有挂)1、金币登录送、破产送、升级送、活动送。详...
发现玩家!途游辅助器软件,we... 发现玩家!途游辅助器软件,wepoker怎么拿到好牌,教你攻略(有挂教程)是一款可以让一直输的玩家,...