您的位置:首页 > 移动开发 > Android开发

Android应用开发---关于SQL中通过cursor获取指定id的内容

2012-08-12 19:46 627 查看
先上代码:

dbHelper = new DatabaseHelper(Alarm.this, "idea.sql");
		SQLiteDatabase db = dbHelper.getReadableDatabase();
		Cursor cursor = db
				.query("user", new String[] {"_id","mtext","mtime"}, "_id=?",
						new String[] {NoteActivity.AlarmIndex+""}, null,
						null, null);
		if(cursor.moveToFirst()){
			mtime = cursor.getString(cursor.getColumnIndex("mtime"));
			mtext = cursor.getString(cursor.getColumnIndex("mtext"));
		}
		db.close();


其中:NoteActivity.AlarmIndex中的AlarmIndex是public class NoteActivity extends Activity 中的静态变量:static int AlarmIndex = 0;

这样,在其他类中就可以应用该数据了。

另:需要注意的是为啥要cursor.moveToFirst(),这是因为android 中数据库处理,特别是使用cursor时,注意初始位置是从下标为-1的地方开始的,也就是说一次查询中,返回给cursor查询结果时,不能够马上从cursor中提取值。不然会出现这样的错误:CursorIndexOutOfBoundsException

附加:关于cursor中db.query中的几个参数说明:

db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy);


①table:表名称

②columns:列名称数组

③selection:条件字句,相当于where

④selectionArgs:条件字句,参数数组

⑤groupBy:分组列

⑥having:分组条件

⑦orderBy:排序列
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐