以下代码查看数据库中的所有记录。
Cursor cur = db.getall();
adapter = new RRSelectTrackActivity.MyAdapter(this, cur, this, this);
public MyAdapter(Context context, Cursor c, OnClickListener btnOnClick,OnCheckedChangeListener chkOnChange) {
super(context, R.layout.list_item, c );
this.btnOnClick = btnOnClick;
this.chkOnChange = chkOnChange;
}
我只需要查看前三个记录。如何为此目的修改此代码?
答案 0 :(得分:0)
以下行在后台执行查询并获取一个游标,您可以一次在其中移动一条记录。您应该对该行中调用的函数感兴趣,而不是您编写的使用数据的函数。
Cursor cur = db.getall();
调用查询的方法是getall();
实例上的db
方法。因此,转到db
类定义并创建另一个名为getTopNRecords(int n)
的方法,该方法使用与getall()
完全相同的查询,但使查询以select top {n}
开头而不是简单select
。
这样,使用数据的现有函数可以保持不变,只需要调用与getall()
不同的函数,这样就可以首先使用较少的数据。
某些数据库不支持“select top”语法。在这种情况下,您通常可以在查询中添加“limit {n}”。
<强>示例:强>
select top 5 first_name, last_name from people;
select first_name, last_name from people limit 5;