SQLiteCursor
open class SQLiteCursor : AbstractWindowedCursor
| kotlin.Any | |||
| ↳ | android.database.AbstractCursor | ||
| ↳ | android.database.AbstractWindowedCursor | ||
| ↳ | android.database.sqlite.SQLiteCursor | ||
A Cursor implementation that exposes results from a query on a SQLiteDatabase. SQLiteCursor is not internally synchronized so code using a SQLiteCursor from multiple threads should perform its own synchronization when using the SQLiteCursor.
Summary
| Public constructors | |
|---|---|
SQLiteCursor(driver: SQLiteCursorDriver!, editTable: String!, query: SQLiteQuery!)Execute a query and provide access to its result set through a Cursor interface. |
|
SQLiteCursor(db: SQLiteDatabase!, driver: SQLiteCursorDriver!, editTable: String!, query: SQLiteQuery!)Execute a query and provide access to its result set through a Cursor interface. |
|
| Public methods | |
|---|---|
| open Unit |
close()Closes the Cursor, releasing all of its resources and making it completely invalid. |
| open Unit |
Deactivates the Cursor, making all calls on it fail until |
| open Int |
getColumnIndex(columnName: String!)Returns the zero-based index for the given column name, or -1 if the column doesn't exist. |
| open Array<String!>! |
Returns a string array holding the names of all of the columns in the result set in the order in which they were listed in the result. |
| open Int |
getCount()Returns the numbers of rows in the cursor. |
| open SQLiteDatabase! |
Get the database that this cursor is associated with. |
| open Boolean |
This function is called every time the cursor is successfully scrolled to a new position, giving the subclass a chance to update any state it may have. |
| open Boolean |
requery()Performs the query that created the cursor again, refreshing its contents. |
| open Unit |
setFillWindowForwardOnly(fillWindowForwardOnly: Boolean)Controls fetching of rows relative to requested position. |
| open Unit |
setSelectionArguments(selectionArgs: Array<String!>!)Changes the selection arguments. |
| open Unit |
setWindow(window: CursorWindow!)Sets a new cursor window for the cursor to use. |
| Protected methods | |
|---|---|
| open Unit |
finalize()Release the native resources, if they haven't been released yet. |
| Inherited functions | |
|---|---|
| Inherited properties | |
|---|---|
Public constructors
SQLiteCursor
SQLiteCursor(
driver: SQLiteCursorDriver!,
editTable: String!,
query: SQLiteQuery!)
Execute a query and provide access to its result set through a Cursor interface. For a query such as: SELECT name, birth, phone FROM myTable WHERE ... LIMIT 1,20 ORDER BY... the column names (name, birth, phone) would be in the projection argument and everything from FROM onward would be in the params argument.
| Parameters | |
|---|---|
editTable |
String!: the name of the table used for this query |
query |
SQLiteQuery!: the SQLiteQuery object associated with this cursor object. |
SQLiteCursor
SQLiteCursor(
db: SQLiteDatabase!,
driver: SQLiteCursorDriver!,
editTable: String!,
query: SQLiteQuery!)
Deprecated: use SQLiteCursor(android.database.sqlite.SQLiteCursorDriver,java.lang.String,android.database.sqlite.SQLiteQuery) instead
Execute a query and provide access to its result set through a Cursor interface. For a query such as: SELECT name, birth, phone FROM myTable WHERE ... LIMIT 1,20 ORDER BY... the column names (name, birth, phone) would be in the projection argument and everything from FROM onward would be in the params argument.
| Parameters | |
|---|---|
db |
SQLiteDatabase!: a reference to a Database object that is already constructed and opened. This param is not used any longer |
editTable |
String!: the name of the table used for this query |
query |
SQLiteQuery!: the rest of the query terms cursor is finalized |
Public methods
close
open fun close(): Unit
Closes the Cursor, releasing all of its resources and making it completely invalid. Unlike deactivate() a call to requery() will not make the Cursor valid again.
| Exceptions | |
|---|---|
java.lang.Exception |
if this resource cannot be closed |
java.io.IOException |
if an I/O error occurs |
deactivate
open fun deactivate(): Unit
Deactivates the Cursor, making all calls on it fail until requery is called. Inactive Cursors use fewer resources than active Cursors. Calling requery will make the cursor active again.
getColumnIndex
open fun getColumnIndex(columnName: String!): Int
Returns the zero-based index for the given column name, or -1 if the column doesn't exist. If you expect the column to exist use getColumnIndexOrThrow(java.lang.String) instead, which will make the error more clear.
| Parameters | |
|---|---|
columnName |
String!: the name of the target column. |
| Return | |
|---|---|
Int |
the zero-based column index for the given column name, or -1 if the column name does not exist. Value is -1 or greater |
getColumnNames
open fun getColumnNames(): Array<String!>!
Returns a string array holding the names of all of the columns in the result set in the order in which they were listed in the result.
| Return | |
|---|---|
Array<String!>! |
the names of the columns returned in this query. |
getCount
open fun getCount(): Int
Returns the numbers of rows in the cursor.
| Return | |
|---|---|
Int |
the number of rows in the cursor. Value is 0 or greater |
getDatabase
open fun getDatabase(): SQLiteDatabase!
Get the database that this cursor is associated with.
| Return | |
|---|---|
SQLiteDatabase! |
the SQLiteDatabase that this cursor is associated with. |
onMove
open fun onMove(
oldPosition: Int,
newPosition: Int
): Boolean
This function is called every time the cursor is successfully scrolled to a new position, giving the subclass a chance to update any state it may have. If it returns false the move function will also do so and the cursor will scroll to the beforeFirst position.
| Parameters | |
|---|---|
oldPosition |
Int: the position that we're moving from |
newPosition |
Int: the position that we're moving to |
| Return | |
|---|---|
Boolean |
true if the move is successful, false otherwise |
requery
open fun requery(): Boolean
Performs the query that created the cursor again, refreshing its contents. This may be done at any time, including after a call to deactivate. Since this method could execute a query on the database and potentially take a while, it could cause ANR if it is called on Main (UI) thread. A warning is printed if this method is being executed on Main thread.
| Return | |
|---|---|
Boolean |
true if the requery succeeded, false if not, in which case the cursor becomes invalid. |
setFillWindowForwardOnly
open fun setFillWindowForwardOnly(fillWindowForwardOnly: Boolean): Unit
Controls fetching of rows relative to requested position.
Calling this method defines how rows will be loaded, but it doesn't affect rows that are already in the window. This setting is preserved if a new window is set
| Parameters | |
|---|---|
fillWindowForwardOnly |
Boolean: if true, rows will be fetched starting from requested position up to the window's capacity. Default value is false. |
setSelectionArguments
open fun setSelectionArguments(selectionArgs: Array<String!>!): Unit
Changes the selection arguments. The new values take effect after a call to requery().
setWindow
open fun setWindow(window: CursorWindow!): Unit
Sets a new cursor window for the cursor to use.
The cursor takes ownership of the provided cursor window; the cursor window will be closed when the cursor is closed or when the cursor adopts a new cursor window.
If the cursor previously had a cursor window, then it is closed when the new cursor window is assigned.
| Parameters | |
|---|---|
window |
CursorWindow!: The new cursor window, typically a remote cursor window. |
Protected methods
finalize
protected open fun finalize(): Unit
Release the native resources, if they haven't been released yet.
| Exceptions | |
|---|---|
java.lang.Throwable |
the Exception raised by this method |