Figure 2 shows how descriptive columns and data columns appear in a row, and how type-specific column names "overlay" the generic column names Figure 2.
Type-specific column names and generic column names.
The Contacts Provider creates three raw contacts as a result of this work: , the Contacts Provider stores the two email address rows and links them both to the raw contact.
Notice that different types of data are stored in this single table.
Some examples of descriptive column names are: column is indexed.
The Contacts Provider always uses this column for the data that the provider expects will be the most frequent target of a query.
If an application or sync adapter creates a new raw contact that column.Figure 3 shows how the three main tables relate to each other. Contacts, Raw Contacts, and Details table relationships.Users enter contacts data directly into the device, but data also flows into the Contacts Provider from web services via sync adapters, which automate the transfer of data between the device and services.Because the Contacts Provider allows more than one online service as the source of data for a person, the Contacts Provider allows multiple raw contacts for the same person.Multiple raw contacts also allow a user to combine a person's data from more than one account from the same account type.If you try to update a column that's listed as "read-only," the update is ignored.The Contacts Provider creates a new contact in response to the addition of a new raw contact that doesn't match any existing contacts.This facilitates displaying and modifying all the data a user has collected for a person.The Contacts Provider manages the creation of new contact rows, and the aggregation of raw contacts with an existing contact row.To facilitate working with the columns for a particular type of row, the Contacts Provider also provides type-specific column name constants, defined in subclasses of table using a row that has one of the provider's pre-defined MIME types.If you do, you may lose the data or cause the provider to malfunction.