Android
android.database.sqlite
public abstract class

android.database.sqlite.SQLiteProgram

java.lang.Object
android.database.sqlite.SQLiteClosable
android.database.sqlite.SQLiteProgram

A base class for compiled SQLite programs.

Known Direct Subclasses

Summary

Fields

protected      SQLiteDatabase  mDatabase  The database this program is compiled against. 
protected      int  nHandle  Native linkage, do not modify. 
protected      int  nStatement  Native linkage, do not modify. 

Public Methods

          void  bindBlob(int index, byte[] value)
Bind a byte array value to this statement.
          void  bindDouble(int index, double value)
Bind a double value to this statement.
          void  bindLong(int index, long value)
Bind a long value to this statement.
          void  bindNull(int index)
Bind a NULL value to this statement.
          void  bindString(int index, String value)
Bind a String value to this statement.
          void  clearBindings()
Clears all existing bindings.
          void  close()
Release this program's resources, making it invalid.
    final      int  getUniqueId()
Returns a unique identifier for this program.

Protected Methods

          void  compile(String sql, boolean forceCompilation)
Compiles the given SQL into a SQLite byte code program using sqlite3_prepare_v2().
          void  finalize()
Make sure that the native resource is cleaned up.
    final      void  native_bind_blob(int index, byte[] value)
    final      void  native_bind_double(int index, double value)
    final      void  native_bind_long(int index, long value)
    final      void  native_bind_null(int index)
    final      void  native_bind_string(int index, String value)
    final      void  native_compile(String sql)
Compiles SQL into a SQLite program.
    final      void  native_finalize()
          void  onAllReferencesReleased()
          void  onAllReferencesReleasedFromContainer()
Methods inherited from class android.database.sqlite.SQLiteClosable
Methods inherited from class java.lang.Object

Details

Fields

protected SQLiteDatabase mDatabase

The database this program is compiled against.

protected int nHandle

Native linkage, do not modify. This comes from the database and should not be modified in here or in the native code.

protected int nStatement

Native linkage, do not modify. When non-0 this holds a reference to a valid sqlite3_statement object. It is only updated by the native code, but may be checked in this class when the database lock is held to determine if there is a valid native-side program or not.

Public Methods

public void bindBlob(int index, byte[] value)

Bind a byte array value to this statement. The value remains bound until clearBindings() is called.

Parameters

index The 1-based index to the parameter to bind
value The value to bind

public void bindDouble(int index, double value)

Bind a double value to this statement. The value remains bound until clearBindings() is called.

Parameters

index The 1-based index to the parameter to bind
value The value to bind

public void bindLong(int index, long value)

Bind a long value to this statement. The value remains bound until clearBindings() is called.

Parameters

index The 1-based index to the parameter to bind
value The value to bind

public void bindNull(int index)

Bind a NULL value to this statement. The value remains bound until clearBindings() is called.

Parameters

index The 1-based index to the parameter to bind null to

public void bindString(int index, String value)

Bind a String value to this statement. The value remains bound until clearBindings() is called.

Parameters

index The 1-based index to the parameter to bind
value The value to bind

public void clearBindings()

Clears all existing bindings. Unset bindings are treated as NULL.

public void close()

Release this program's resources, making it invalid.

public final int getUniqueId()

Returns a unique identifier for this program.

Returns

  • a unique identifier for this program

Protected Methods

protected void compile(String sql, boolean forceCompilation)

Compiles the given SQL into a SQLite byte code program using sqlite3_prepare_v2(). If this method has been called previously without a call to close and forCompilation is set to false the previous compilation will be used. Setting forceCompilation to true will always re-compile the program and should be done if you pass differing SQL strings to this method.

Note: this method acquires the database lock.

Parameters

sql the SQL string to compile
forceCompilation forces the SQL to be recompiled in the event that there is an existing compiled SQL program already around

protected void finalize()

Make sure that the native resource is cleaned up.

protected final void native_bind_blob(int index, byte[] value)

protected final void native_bind_double(int index, double value)

protected final void native_bind_long(int index, long value)

protected final void native_bind_null(int index)

protected final void native_bind_string(int index, String value)

protected final void native_compile(String sql)

Compiles SQL into a SQLite program.

The database lock must be held when calling this method.

Parameters

sql The SQL to compile.

protected final void native_finalize()

protected void onAllReferencesReleased()

protected void onAllReferencesReleasedFromContainer()

Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:56