0

SQLite でテーブルからデータを取得しています。

これは私のコードです

String[] sColoumns = { "_id", "userloginid", "password", "firstname", "lastname", "email", "address"};
Cursor cursor = db.query("users", sColoumns, null,null,null,null,null); 

クエリは、カーソル内のテーブルのすべての行を返します。

ここで、カーソルから行を 1 つずつプルするか、データ テーブルにロードしてから (ビジュアル スタジオのように) 1 つずつプルします。

これを達成するために利用できるもの、または私ができることはありますか?

前もって感謝します。

4

1 に答える 1

2

あなたの質問に答えるには2つの方法があります。

1) カーソルを単純に反復処理して、行データに対して必要なことを行うことができます。

String[] sColoumns = { "_id", "userloginid", "password", "firstname", "lastname", "email", "address"};
Cursor cursor = db.query("users", sColoumns, null,null,null,null,null); 

try {
    int firstNameColIndex = cursor.getColumnIndex("firstname");
    int lastNameColIndex = cursor.getColumnIndex("lastname");

    while (cursor.moveToNext()) {
        String fullName = cursor.getString(firstNameColIndex) + cursor.getString(lastNameColIndex);
    }
} finally {
    cursor.close();
}

2) 一般的な使用例は、リスト ビューでデータを表示することです。Android 3.0 Honeycomb (および以前のバージョンの Android Support/Compatiblity lib) 以降のベスト プラクティスは、ローダーを使用してカーソルを管理することです。たとえば、コンテンツ プロバイダーでデータが更新された場合、リスト ビューの更新を処理します。このトピックを理解するには、 http://developer.android.com/guide/topics/fundamentals/loaders.html (下部にあるサンプルへのリンクを参照) を読むことをお勧めします。

于 2012-05-23T10:37:23.993 に答える