我在网上浏览了一些关于数据库连接和检索的代码,我在很多代码中看到了Cursor cur1= moveToFirst(),我想知道光标的用途是什么,为什么我们使用moveToFirst()。
Cursor cur1= moveToFirst()
moveToFirst()
aelbi1ox1#
Cursor是表示任何数据库的二维表的接口。当您尝试使用SELECT语句检索某些数据时,数据库将首先创建一个CURSOR对象并将其引用返回给您。
此返回引用的指针指向Cursor的0th location,否则称为before first location,因此,当您要从游标检索数据时,必须首先移动到第一条记录,因此必须使用moveToFirst当您对Cursor调用moveToFirst()方法时,它将游标指针指向第一个位置。现在您可以访问第一条记录中存在的数据
dl5txlt92#
简单的说,Cursor是一个返回查询数据集合的接口。moveToFirst()用于指向您想要从您的游标获取数据的游标位置。有moveToLast(),moveToNext(),moveToPrevious(),moveToPosition(position)方法可以通过您想要的方式迭代游标。例如,您的游标中有数据
moveToLast()
moveToNext()
moveToPrevious()
moveToPosition(position)
Lalit Rithesh Paresh Chandra
cursor.moveToFirst()
klr1opcd3#
Cursor表示查询结果,基本上指向查询结果的一行,这样Android可以高效地缓存查询结果;因为它不必将所有数据加载到存储器中。要获取结果查询的元素数,请使用getCount()方法。要在单个数据行之间移动,可以使用moveToFirst()和moveToNext()方法。isAfterLast()方法允许检查是否已到达查询结果的末尾。Cursor提供类型化的get*()方法,例如getLong(columnIndex)、getString(columnIndex),用于访问结果当前位置的列数据。“columnIndex”是您正在访问的列的编号。Cursor还提供了getColumnIndexOrThrow(String)方法,该方法允许获取表的列名的列索引。需要使用close()方法调用关闭Cursor。查询返回Cursor对象。
getCount()
isAfterLast()
getLong(columnIndex)
getString(columnIndex)
getColumnIndexOrThrow(String)
close()
wa7juj8i4#
游标类似于java中的ResultSet,它有一些查询返回的行和指针。moveToFirst(),moveToNext()和moveToPosition(position)设置指针到所需的位置。
s4chpxco5#
游标是存储任何SQL查询结果的地方。
shyt4zoc6#
使用Cursor接口作为数据收集。它类似于PL/SQL中的Cursor,因为它使用指针保存某些查询返回的一行或多行。Cursor接口中提供了以下方法,这些方法遍历Cursor,将Cursor pointer设置到所需位置:
PL/SQL
Cursor
Cursor pointer
*移动到第一个()*移动到最后()*移动到下一个()*移动到上一个()*移动到位置(位置)
pqwbnv8z7#
游标接口提供对数据库查询返回的结果集的随机读写访问。游标实现不需要同步,因此在多个线程中使用游标的代码在使用游标时应执行自己的同步。
7条答案
按热度按时间aelbi1ox1#
Cursor是表示任何数据库的二维表的接口。当您尝试使用SELECT语句检索某些数据时,数据库将首先创建一个CURSOR对象并将其引用返回给您。
此返回引用的指针指向Cursor的0th location,否则称为before first location,因此,当您要从游标检索数据时,必须首先移动到第一条记录,因此必须使用moveToFirst
当您对Cursor调用moveToFirst()方法时,它将游标指针指向第一个位置。现在您可以访问第一条记录中存在的数据
dl5txlt92#
简单的说,Cursor是一个返回查询数据集合的接口。
moveToFirst()
用于指向您想要从您的游标获取数据的游标位置。有moveToLast()
,moveToNext()
,moveToPrevious()
,moveToPosition(position)
方法可以通过您想要的方式迭代游标。例如,您的游标中有数据
moveToFirst()
-如果你使用cursor.moveToFirst()
,那么在这种情况下它将指向Lalit,因为它是你游标中的第一个数据。要从游标中获取下一个数据,你可以使用moveToNext()
。moveToLast()
-这将把Chandra指向游标中的当前数据。要从游标中获取以前的数据,可以使用moveToPrevious()
klr1opcd3#
Cursor表示查询结果,基本上指向查询结果的一行,这样Android可以高效地缓存查询结果;因为它不必将所有数据加载到存储器中。
要获取结果查询的元素数,请使用
getCount()
方法。要在单个数据行之间移动,可以使用
moveToFirst()
和moveToNext()
方法。isAfterLast()
方法允许检查是否已到达查询结果的末尾。Cursor提供类型化的get*()方法,例如
getLong(columnIndex)
、getString(columnIndex)
,用于访问结果当前位置的列数据。“columnIndex”是您正在访问的列的编号。Cursor还提供了
getColumnIndexOrThrow(String)
方法,该方法允许获取表的列名的列索引。需要使用
close()
方法调用关闭Cursor。查询返回Cursor对象。wa7juj8i4#
游标类似于java中的ResultSet,它有一些查询返回的行和指针。
moveToFirst()
,moveToNext()
和moveToPosition(position)
设置指针到所需的位置。s4chpxco5#
游标是存储任何SQL查询结果的地方。
shyt4zoc6#
使用Cursor接口作为数据收集。
它类似于
PL/SQL
中的Cursor
,因为它使用指针保存某些查询返回的一行或多行。Cursor
接口中提供了以下方法,这些方法遍历Cursor
,将Cursor pointer
设置到所需位置:*移动到第一个()
*移动到最后()
*移动到下一个()
*移动到上一个()
*移动到位置(位置)
pqwbnv8z7#
游标接口提供对数据库查询返回的结果集的随机读写访问。
游标实现不需要同步,因此在多个线程中使用游标的代码在使用游标时应执行自己的同步。