Most visited

Recently visited

Added in API level 1

SQLiteCursor

public class SQLiteCursor
extends AbstractWindowedCursor

java.lang.Object
   ↳ android.database.AbstractCursor
     ↳ android.database.AbstractWindowedCursor
       ↳ android.database.sqlite.SQLiteCursor


一个Cursor实现,显示SQLiteDatabase上查询的SQLiteDatabase SQLiteCursor不在内部同步,因此使用SQLiteCursor时使用多线程SQLiteCursor的代码应该执行自己的同步。

Summary

Inherited constants

From interface android.database.Cursor

Inherited fields

From class android.database.AbstractWindowedCursor
From class android.database.AbstractCursor

Public constructors

SQLiteCursor(SQLiteDatabase db, SQLiteCursorDriver driver, String editTable, SQLiteQuery query)

此构造函数在API级别11中已弃用。 SQLiteCursor(SQLiteCursorDriver, String, SQLiteQuery)改为使用SQLiteCursor(SQLiteCursorDriver, String, SQLiteQuery)

SQLiteCursor(SQLiteCursorDriver driver, String editTable, SQLiteQuery query)

通过Cursor接口执行查询并提供对其结果集的访问。

Public methods

void close()

关闭光标,释放其所有资源并使其完全无效。

void deactivate()

取消激活光标,使所有调用失败,直到调用 requery()

int getColumnIndex(String columnName)

返回给定列名称的从零开始的索引,如果该列不存在,则返回-1。

String[] getColumnNames()

以结果中列出的顺序返回一个字符串数组,其中包含结果集中所有列的名称。

int getCount()

返回游标中的行数。

SQLiteDatabase getDatabase()

获取与该游标关联的数据库。

boolean onMove(int oldPosition, int newPosition)

每次将光标成功滚动到新位置时都会调用此函数,从而使子类有机会更新其可能具有的任何状态。

boolean requery()

执行再次创建光标的查询,刷新其内容。

void setSelectionArguments(String[] selectionArgs)

更改选择参数。

void setWindow(CursorWindow window)

设置一个新的光标窗口供光标使用。

Protected methods

void finalize()

如果它们尚未发布,则释放本地资源。

Inherited methods

From class android.database.AbstractWindowedCursor
From class android.database.AbstractCursor
From class java.lang.Object
From interface android.database.CrossProcessCursor
From interface android.database.Cursor
From interface java.io.Closeable
From interface java.lang.AutoCloseable

Public constructors

SQLiteCursor

Added in API level 1
SQLiteCursor (SQLiteDatabase db, 
                SQLiteCursorDriver driver, 
                String editTable, 
                SQLiteQuery query)

此构造函数在API级别11中已弃用。
改为使用SQLiteCursor(SQLiteCursorDriver, String, SQLiteQuery)

通过Cursor接口执行查询并提供对其结果集的访问。 对于诸如: SELECT name, birth, phone FROM myTable WHERE ... LIMIT 1,20 ORDER BY...的查询,列名(姓名,出生地,电话)将在投影参数中,并且从FROM开始的所有内容都将在参数参数中。

Parameters
db SQLiteDatabase: a reference to a Database object that is already constructed and opened. This param is not used any longer
driver SQLiteCursorDriver
editTable String: the name of the table used for this query
query SQLiteQuery: the rest of the query terms cursor is finalized

SQLiteCursor

Added in API level 11
SQLiteCursor (SQLiteCursorDriver driver, 
                String editTable, 
                SQLiteQuery query)

通过Cursor接口执行查询并提供对其结果集的访问。 对于诸如: SELECT name, birth, phone FROM myTable WHERE ... LIMIT 1,20 ORDER BY...的查询,列名(姓名,出生地,电话)将在投影参数中,并且从FROM开始的所有内容都将在参数参数中。

Parameters
driver SQLiteCursorDriver
editTable String: the name of the table used for this query
query SQLiteQuery: the SQLiteQuery object associated with this cursor object.

Public methods

close

Added in API level 1
void close ()

关闭光标,释放其所有资源并使其完全无效。 deactivate()不同,调用requery()不会使光标再次有效。

deactivate

Added in API level 1
void deactivate ()

取消激活光标,使所有调用失败,直到调用requery() 非活动游标使用比活动游标更少的资源。 调用requery()将使光标再次激活。

getColumnIndex

Added in API level 1
int getColumnIndex (String columnName)

返回给定列名称的从零开始的索引,如果该列不存在,则返回-1。 如果您希望该列存在, getColumnIndexOrThrow(String)改为使用getColumnIndexOrThrow(String) ,这会使错误更加清晰。

Parameters
columnName String: the name of the target column.
Returns
int the zero-based column index for the given column name, or -1 if the column name does not exist.

getColumnNames

Added in API level 1
String[] getColumnNames ()

以结果中列出的顺序返回一个字符串数组,其中包含结果集中所有列的名称。

Returns
String[] the names of the columns returned in this query.

getCount

Added in API level 1
int getCount ()

返回游标中的行数。

Returns
int the number of rows in the cursor.

getDatabase

Added in API level 1
SQLiteDatabase getDatabase ()

获取与该游标关联的数据库。

Returns
SQLiteDatabase the SQLiteDatabase that this cursor is associated with.

onMove

Added in API level 1
boolean onMove (int oldPosition, 
                int newPosition)

每次将光标成功滚动到新位置时都会调用此函数,从而使子类有机会更新其可能具有的任何状态。 如果它返回false,移动功能也会这样做,并且光标将滚动到beforeFirst位置。

Parameters
oldPosition int: the position that we're moving from
newPosition int: the position that we're moving to
Returns
boolean true if the move is successful, false otherwise

requery

Added in API level 1
boolean requery ()

执行再次创建光标的查询,刷新其内容。 这可以随时完成,包括致电deactivate() 由于此方法可能会在数据库上执行查询并可能需要一段时间,因此如果在Main(UI)线程上调用该方法,则可能会导致ANR。 如果在主线程上执行此方法,则会打印警告。

Returns
boolean true if the requery succeeded, false if not, in which case the cursor becomes invalid.

setSelectionArguments

Added in API level 1
void setSelectionArguments (String[] selectionArgs)

更改选择参数。 调用resery()后,新值生效。

Parameters
selectionArgs String

setWindow

Added in API level 1
void setWindow (CursorWindow window)

设置一个新的光标窗口供光标使用。

游标取得所提供的光标窗口的所有权; 当光标关闭或光标采用新的光标窗口时,光标窗口将会关闭。

如果光标先前有一个光标窗口,则在分配新的光标窗口时它会关闭。

Parameters
window CursorWindow: The new cursor window, typically a remote cursor window.

Protected methods

finalize

Added in API level 1
void finalize ()

如果它们尚未发布,则释放本地资源。

Hooray!