2011-11-09 9 views
2

たとえば、次のコードを使用してデータベースから一部のデータを照会するとします。私はお願いしたいと思いますどのようなカーソルは結果セットをコピーしますか?

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); 

は、queryメソッドの後にあるデータベースは、その結果がカーソルに設定したりするとき、私たちだけで、より多くのデータのために、結果セットとクエリの最初の行へのポインタやポイントなどのカーソル何かを作るコピーしません`moveToNext 'を呼び出す
ありがとう

答えて

2

はい。これはDBの読み取り専用コピーです。 Androidの開発者から

+0

この情報源/参考資料としてのリンクはありますか? – Murmel

0

このインタフェースは、データベースクエリによって返される結果セットにランダム読み書きアクセスを提供します。カーソルの実装は同期する必要はないので、複数のスレッドからのCursorを使用するコードは、Cursorを使用するときに独自の同期を実行する必要があります。

+0

カーソルはポインタなのですか? –

関連する問題