0

我正在从 SQLite 中的表中获取数据。

这是我的代码

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

查询返回游标中表的所有行。

现在我想从光标中一一拉出行或将它们加载到数据表中,然后一一拉出(就像在 Visual Studio 中一样)。

有什么可用的或我能做些什么来实现这一目标吗?

提前致谢。

4

1 回答 1

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),最佳实践是使用 Loader 来管理光标。例如,如果数据在内容提供者中更新,它将负责更新列表视图。我建议阅读http://developer.android.com/guide/topics/fundamentals/loaders.html(请参阅底部的示例链接)以了解该主题。

于 2012-05-23T10:37:23.993 回答