2011-11-09 2 views
2

Par exemple, si j'utilise le code suivant pour interroger certaines données de la base de données.Est-ce que le curseur copie le jeu de résultats?

Uri uri = Uri.parse("content://com.android.contacts/contacts?address_book_index_extras=true"); 
     String selection = "LEFT OUTER JOIN (select raw_contact_id, data1 from data where mimetype_id = 5) AS phone_data ON(_id = phone_data.raw_contact_id)"; 
     Cursor c = getContentResolver().query(Contacts.CONTENT_URI, null, selection, null, null); 

Ce que je veux poser est après la méthode de requête, ne base de données copie de son jeu de résultats à curseur ou tout simplement faire curseur quelque chose comme un pointeur et un point à la première ligne de jeu de résultats et d'interrogation pour plus de données lorsque nous appel `moveToNext '
merci

Répondre

2

Oui. C'est une copie en lecture seule de la base de données.

+0

Avez-vous un lien comme source/référence pour cela? – Murmel

0

De développeurs Android:

Cette interface offre un accès en lecture-écriture aléatoire à l'ensemble de résultat renvoyé par une requête de base de données. Les implémentations de curseurs n'ont pas besoin d'être synchronisées, de sorte que le code utilisant un curseur provenant de plusieurs threads doit effectuer sa propre synchronisation lors de l'utilisation du curseur.

+0

Alors curseur est un pointeur? –

Questions connexes