我的目标是从Android Gingerbread及更高版本的特定电子邮件地址获取本机数据库中的所有行.
此查询仅获取案例也匹配的行.
Cursor cursor = context.getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,
new String[] {Contacts._ID}, ContactsContract.CommonDataKinds.Email.ADDRESS + "=?",
new String[] {email}, null);
Run Code Online (Sandbox Code Playgroud)
我已经读过有关sql的WHERE子句,其中一个使用lower('xx'),但我无法弄清楚如何使用它.另外我学会了你可以让列在创建表时不关心案例,但是这艘船已经航行了.
sam*_*hna 21
也试试
Cursor cursor = context.getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,
new String[] {Contacts._ID}, ContactsContract.CommonDataKinds.Email.ADDRESS + "=? COLLATE NOCASE",
new String[] {email}, null);
Run Code Online (Sandbox Code Playgroud)
请注意,COLLATE NOCASE在查询中添加了.
请尝试(我想邮件是String对象):
Cursor cursor = context.getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,
new String[] {Contacts._ID}, "lower("+ContactsContract.CommonDataKinds.Email.ADDRESS + ")=lower('"+ email +"')",
null, null);
Run Code Online (Sandbox Code Playgroud)
要么
Cursor cursor = context.getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,
new String[] {Contacts._ID}, "lower("+ContactsContract.CommonDataKinds.Email.ADDRESS + ")=lower('"+ email +"')",
new String[] {}, null);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7986 次 |
| 最近记录: |