Android 如何读取SQLite数据库?
找到了10多个关于“游标”的教程,但我不明白。 我的问题是:如何从数据库中读取数据 例如: 数据库名称:Test_数据库 表名:tbl_用户 其中有两列:id、用户名 现在我喜欢读id为3的用户名 ==>从id=3的tbl_用户中选择用户名Android 如何读取SQLite数据库?,android,database,sqlite,Android,Database,Sqlite,找到了10多个关于“游标”的教程,但我不明白。 我的问题是:如何从数据库中读取数据 例如: 数据库名称:Test_数据库 表名:tbl_用户 其中有两列:id、用户名 现在我喜欢读id为3的用户名 ==>从id=3的tbl_用户中选择用户名 如何将其发送给TextView、Toast或Alert?一种方法是,在SQLLiteOpenHelper的帮助下,首先需要获取对数据库的引用。然后对数据库进行查询或查询。使用rawQuery时,您可以直接发布您在问题中键入的查询。如果您使用query,您将使
如何将其发送给TextView、Toast或Alert?一种方法是,在SQLLiteOpenHelper的帮助下,首先需要获取对数据库的引用。然后对数据库进行查询或查询。使用rawQuery时,您可以直接发布您在问题中键入的查询。如果您使用query,您将使用android内置API来构造以创建相同的查询。下面是一个示例
您所指的光标是指向查询接收到的数据的指针,迭代光标将允许您访问数据库的每一行表示形式。实现这一点的最佳方法(至少在我看来)是创建自定义的
SqliteDatabaseHelper
,您可以创建如下函数:
public Cursor executeSQLQuery(String query){
Cursor c = sqliteDb.rawQuery(query,null); // private static SQLiteDatabase sqliteDb;
return c;
}
返回光标
,然后您可以像这样使用此光标:
CustomDatabaseHelper dbHelper = new CustomDatabaseHelper(params...);
String sql = "SELECT name FROM cards WHERE id=2";
Cursor cursor = dbHelper.executeSQLQuery(sql);
if(cursor.getCount()==0){
// do something when you don't have any data, show message or something like this
} else if(cursor.getCount()>0){
for(cursor.move(0); cursor.moveToNext(); cursor.isAfterLast()){
String getName = cursor.getString(cursor.getColumnIndex("name"));
}
}
这至少是我使用Cursor
从数据库获取数据的方式
希望对您有所帮助。请浏览以下链接,了解详细信息和简单的示例
Android中SQLite数据库中的数据好的,我明天会试试。lol Android比PHP xDIt工作时要重得多!非常感谢:)谢谢Anuja。插入、更新和删除都没有问题。我只是不明白它是如何使用游标的。但现在我知道了。@Marco,欢迎你:-)