我正在学习 android 中的 sqlite。今天我遇到了一个代码,用于在数据库中查找特定条目并将其返回(用于显示给用户)。我对代码中发生的事情有点困惑。程序员首先调用查询方法,然后将光标移动到第一行。
他为什么调用 moveTofirst() 方法?此方法不会将游标放在数据库的开头,从而导致查询方法返回的内容丢失。
Cursor c = database.query(TABLE_NAME,columns, NAME_COL+ "="+ findname, null,null,null,null);
if(c!=null)
{
c.moveToFirst();
name= c.getString(1);
return name;
}
问候。
最佳答案
没有。根据文档, moveToFirst() 的描述是
Move the cursor to the first row.
所以基本上,您将游标设置为结果的第一行(而不是表本身),因为游标仅包含与您的查询匹配的行,而不是表中的所有行(除非您查询它们).
关于java - 为什么在数据库 android 中进行查询后调用 moveToFirst(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17320198/