public void onClick(View v) 
{
ContentResolver cr = getContentResolver();
Uri uri = Contacts.People.CONTENT_URI;
String[] projection = {Contacts.People._ID,Contacts.PeopleColumns.NAME,Contacts.PeopleColumns.NOTES};
String selection = Contacts.PeopleColumns.NAME + "=?";
String[] args = {"zhang san"};
Cursor c = cr.query(uri, projection, selection, args, null);
if (c.moveToFirst())
{
for (int i = 0; i < c.getCount(); i++)
{
c.moveToPosition(i);
int id = c.getInt(c.getColumnIndex(Contacts.People._ID));
ContentValues cv = new ContentValues();
cv.put(Contacts.PeopleColumns.NAME, "li si");
Uri updateUri = ContentUris.withAppendedId(uri, id);
cr.update(updateUri, cv, null, null);
}
}
}以下是错误log:09-29 14:37:09.969: ERROR/DatabaseUtils(162): Writing exception to parcel
09-29 14:37:09.969: ERROR/DatabaseUtils(162): java.lang.IllegalArgumentException: Empty values
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at android.database.sqlite.SQLiteDatabase.updateWithOnConflict(SQLiteDatabase.java:1639)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at android.database.sqlite.SQLiteDatabase.update(SQLiteDatabase.java:1622)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateRawContact(ContactsProvider2.java:3752)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateRawContacts(ContactsProvider2.java:3718)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateInTransaction(ContactsProvider2.java:3530)