Android中如何使用Cursor遍历Sqlite

这是第一次写博文,记录自己学习过程中犯得一些错误。
问题描述:
今天在写android的时候,涉及到sqlite的知识,所以自己想搞一个Demo学习一下,看了相关的教程和帮助文档,然后开始动手写自己的程序

//1.获取SQLiteDatabase的对象
SQliteDataBase sqlite = SQliteDatabase.openOrCreateDatabase(new File(Environment.getExternalStorageDirectory() + "\testDB"),null);
//2.向数据库中存入数据
sqlite.execSQL("create table student(id varchar2(10),name varchar2(20),sex varchar2(2)");
sqlite.execSQL("insert into student values(?,?,?)", new String[] {"2013111111", "Tom", "M" });
//3.从sqlite中读取数据
Cursor cursor = sqlite.rawQuery("select * from student", null);
//输出列名
for (int i = 0; i < cursor.getColumnCount(); i++) {
   textView.append(cursor.getColumnName(i) + '\t');
}
textView.append("\n");
//开始读取其中的数据
if (cursor.moveToFirst()) {
    do {
        textView.append(cursor.getString(0) 
        + '\t'
    + cursor.getString(1) 
    + '\t' 
    + cursor.getString(2)
    + '\n');
    } while (cursor.moveToNext());

}

看起了很简单,但是我当时在使用cursor的时候忘了定位cursor,因为在查询之后返回的是一个结果集,也就是一张二维表,如果我们直接调用getString(int ColumnIndex)的话,就会报错,因为光标不能够确定你要返回哪一行的数据,从而我们在使用Cursor的时候,注意定位光标。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值