2012-01-16 64 views
0

发现超过10个教程“游标”,但我不明白。 我的问题是:如何从数据库中读取数据?如何读取SQLite数据库?

例如: 数据库名称:Test_Database 表名:tbl_users 在它两列:ID,USER_NAME

现在我喜欢以读取与ID的USER_NAME 3 ==> SELECT USER_NAME FROM tbl_useres WHERE id = 3

我怎么能给出一个TextView,吐司或警报?

回答

1

实现这一目标(至少我认为)最好的办法是创建自定义SqliteDatabaseHelper,您可以创建这样一个功能:

public Cursor executeSQLQuery(String query){ 
    Cursor c = sqliteDb.rawQuery(query,null); // private static SQLiteDatabase sqliteDb; 
    return c; 
} 

返回Cursor之后,你可以使用此光标像:

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摆脱数据库中的数据。

希望它有帮助。

+0

好,我会尽力明天。大声笑 Android比PHP xD – 2012-01-16 16:21:44

+0

重得多它的工作! 非常感谢:) – 2012-01-17 07:09:14

+1

很高兴听到! – 2012-01-17 07:32:57

0

一种方法是,在SQLLiteOpenHelper的帮助下,首先需要获取对数据库的引用。然后在你的数据库上查询OR rawQuery。在使用rawQuery时,您可以直接发布您直接输入的查询。如果您使用查询,您将使用android内置的API来构建以创建相同的查询。以下是示例示例using sqllite openhelper

您所指的光标是指向您的查询接收到的数据的指针,迭代光标将允许您访问数据库的每行代表。

0

经过在Android中为

数据的细节和简单的例子以下链接SQLite数据库

+1

谢谢Anuja。插入,更新和删除是没有问题的。我只是不明白它如何与游标一起工作。但现在我知道了。 – 2012-01-17 07:10:49

+0

@MarcoSeiz欢迎您:-) – AnujAroshA 2012-01-17 09:54:02