to top
Android APIs
public final class

SQLiteStatement

extends SQLiteProgram
java.lang.Object
   ↳ android.database.sqlite.SQLiteClosable
     ↳ android.database.sqlite.SQLiteProgram
       ↳ android.database.sqlite.SQLiteStatement

Class Overview

Represents a statement that can be executed against a database. The statement cannot return multiple rows or columns, but single value (1 x 1) result sets are supported.

This class is not thread-safe.

Summary

Public Methods
void execute()
Execute this SQL statement, if it is not a SELECT / INSERT / DELETE / UPDATE, for example CREATE / DROP table, view, trigger, index etc.
long executeInsert()
Execute this SQL statement and return the ID of the row inserted due to this call.
int executeUpdateDelete()
Execute this SQL statement, if the the number of rows affected by execution of this SQL statement is of any importance to the caller - for example, UPDATE / DELETE SQL statements.
ParcelFileDescriptor simpleQueryForBlobFileDescriptor()
Executes a statement that returns a 1 by 1 table with a blob value.
long simpleQueryForLong()
Execute a statement that returns a 1 by 1 table with a numeric value.
String simpleQueryForString()
Execute a statement that returns a 1 by 1 table with a text value.
String toString()
Returns a string containing a concise, human-readable description of this object.
[Expand]
Inherited Methods
From class android.database.sqlite.SQLiteProgram
From class android.database.sqlite.SQLiteClosable
From class java.lang.Object
From interface java.io.Closeable
From interface java.lang.AutoCloseable

Public Methods

public void execute ()

Added in API level 1

Execute this SQL statement, if it is not a SELECT / INSERT / DELETE / UPDATE, for example CREATE / DROP table, view, trigger, index etc.

Throws
SQLException If the SQL string is invalid for some reason

public long executeInsert ()

Added in API level 1

Execute this SQL statement and return the ID of the row inserted due to this call. The SQL statement should be an INSERT for this to be a useful call.

Returns
  • the row ID of the last row inserted, if this insert is successful. -1 otherwise.
Throws
SQLException If the SQL string is invalid for some reason

public int executeUpdateDelete ()

Added in API level 11

Execute this SQL statement, if the the number of rows affected by execution of this SQL statement is of any importance to the caller - for example, UPDATE / DELETE SQL statements.

Returns
  • the number of rows affected by this SQL statement execution.
Throws
SQLException If the SQL string is invalid for some reason

public ParcelFileDescriptor simpleQueryForBlobFileDescriptor ()

Added in API level 11

Executes a statement that returns a 1 by 1 table with a blob value.

Returns
  • A read-only file descriptor for a copy of the blob value, or null if the value is null or could not be read for some reason.
Throws
SQLiteDoneException if the query returns zero rows

public long simpleQueryForLong ()

Added in API level 1

Execute a statement that returns a 1 by 1 table with a numeric value. For example, SELECT COUNT(*) FROM table;

Returns
  • The result of the query.
Throws
SQLiteDoneException if the query returns zero rows

public String simpleQueryForString ()

Added in API level 1

Execute a statement that returns a 1 by 1 table with a text value. For example, SELECT COUNT(*) FROM table;

Returns
  • The result of the query.
Throws
SQLiteDoneException if the query returns zero rows

public String toString ()

Added in API level 1

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.