Build 1.0_r1(from source)

android.database
Class DatabaseUtils

java.lang.Object
  extended by android.database.DatabaseUtils

public class DatabaseUtils
extends Object

Static utility methods for dealing with databases and Cursors.


Nested Class Summary
static class DatabaseUtils.InsertHelper
          This class allows users to do multiple inserts into a table but compile the SQL insert statement only once, which may increase performance.
 
Constructor Summary
DatabaseUtils()
           
 
Method Summary
static void appendEscapedSQLString(StringBuilder sb, String sqlString)
          Appends an SQL string to the given StringBuilder, including the opening and closing single quotes.
static void appendValueToSql(StringBuilder sql, Object value)
          Appends an Object to an SQL string with the proper escaping, etc.
static void bindObjectToProgram(SQLiteProgram prog, int index, Object value)
          Binds the given Object to the given SQLiteProgram using the proper typing.
static void createDbFromSqlStatements(Context context, String dbName, int dbVersion, String sqlStatements)
          Creates a db and populates it with the sql statements in sqlStatements.
static void cursorDoubleToContentValues(Cursor cursor, String field, ContentValues values, String key)
          Reads a Double out of a field in a Cursor and writes it to a Map.
static void cursorDoubleToCursorValues(Cursor cursor, String field, ContentValues values)
          Reads a Double out of a field in a Cursor and writes it to a Map.
static void cursorIntToContentValues(Cursor cursor, String field, ContentValues values)
          Reads an Integer out of a field in a Cursor and writes it to a Map.
static void cursorIntToContentValues(Cursor cursor, String field, ContentValues values, String key)
          Reads a Integer out of a field in a Cursor and writes it to a Map.
static void cursorLongToContentValues(Cursor cursor, String field, ContentValues values)
          Reads a Long out of a field in a Cursor and writes it to a Map.
static void cursorLongToContentValues(Cursor cursor, String field, ContentValues values, String key)
          Reads a Long out of a field in a Cursor and writes it to a Map.
static void cursorRowToContentValues(Cursor cursor, ContentValues values)
          Read the entire contents of a cursor row and store them in a ContentValues.
static void cursorStringToContentValues(Cursor cursor, String field, ContentValues values)
          Reads a String out of a field in a Cursor and writes it to a Map.
static void cursorStringToContentValues(Cursor cursor, String field, ContentValues values, String key)
          Reads a String out of a field in a Cursor and writes it to a Map.
static void cursorStringToInsertHelper(Cursor cursor, String field, DatabaseUtils.InsertHelper inserter, int index)
          Reads a String out of a field in a Cursor and writes it to an InsertHelper.
static void dumpCurrentRow(Cursor cursor)
          Prints the contents of a Cursor's current row to System.out.
static void dumpCurrentRow(Cursor cursor, PrintStream stream)
          Prints the contents of a Cursor's current row to a PrintSteam.
static void dumpCurrentRow(Cursor cursor, StringBuilder sb)
          Prints the contents of a Cursor's current row to a StringBuilder.
static String dumpCurrentRowToString(Cursor cursor)
          Dump the contents of a Cursor's current row to a String.
static void dumpCursor(Cursor cursor)
          Prints the contents of a Cursor to System.out.
static void dumpCursor(Cursor cursor, PrintStream stream)
          Prints the contents of a Cursor to a PrintSteam.
static void dumpCursor(Cursor cursor, StringBuilder sb)
          Prints the contents of a Cursor to a StringBuilder.
static String dumpCursorToString(Cursor cursor)
          Prints the contents of a Cursor to a String.
static String getCollationKey(String name)
          return the collation key
static String getHexCollationKey(String name)
          return the collation key in hex format
static long longForQuery(SQLiteDatabase db, String query, String[] selectionArgs)
          Utility method to run the query on the db and return the value in the first column of the first row.
static long longForQuery(SQLiteStatement prog, String[] selectionArgs)
          Utility method to run the pre-compiled query and return the value in the first column of the first row.
static long queryNumEntries(SQLiteDatabase db, String table)
          Query the table for the number of rows in the table.
static void readExceptionFromParcel(Parcel reply)
          Special function for reading an exception result from the header of a parcel, to be used after receiving the result of a transaction.
static void readExceptionWithFileNotFoundExceptionFromParcel(Parcel reply)
           
static String sqlEscapeString(String value)
          SQL-escape a string.
static String stringForQuery(SQLiteDatabase db, String query, String[] selectionArgs)
          Utility method to run the query on the db and return the value in the first column of the first row.
static String stringForQuery(SQLiteStatement prog, String[] selectionArgs)
          Utility method to run the pre-compiled query and return the value in the first column of the first row.
static void writeExceptionToParcel(Parcel reply, Exception e)
          Special function for writing an exception result at the header of a parcel, to be used when returning an exception from a transaction.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DatabaseUtils

public DatabaseUtils()
Method Detail

writeExceptionToParcel

public static final void writeExceptionToParcel(Parcel reply,
                                                Exception e)
Special function for writing an exception result at the header of a parcel, to be used when returning an exception from a transaction. exception will be re-thrown by the function in another process

Parameters:
reply - Parcel to write to
e - The Exception to be written.
See Also:
Parcel.writeNoException(), Parcel.writeException(java.lang.Exception)

readExceptionFromParcel

public static final void readExceptionFromParcel(Parcel reply)
Special function for reading an exception result from the header of a parcel, to be used after receiving the result of a transaction. This will throw the exception for you if it had been written to the Parcel, otherwise return and let you read the normal result data from the Parcel.

Parameters:
reply - Parcel to read from
See Also:
Parcel.writeNoException(), Parcel.readException()

readExceptionWithFileNotFoundExceptionFromParcel

public static void readExceptionWithFileNotFoundExceptionFromParcel(Parcel reply)
                                                             throws FileNotFoundException
Throws:
FileNotFoundException

bindObjectToProgram

public static void bindObjectToProgram(SQLiteProgram prog,
                                       int index,
                                       Object value)
Binds the given Object to the given SQLiteProgram using the proper typing. For example, bind numbers as longs/doubles, and everything else as a string by call toString() on it.

Parameters:
prog - the program to bind the object to
index - the 1-based index to bind at
value - the value to bind

appendEscapedSQLString

public static void appendEscapedSQLString(StringBuilder sb,
                                          String sqlString)
Appends an SQL string to the given StringBuilder, including the opening and closing single quotes. Any single quotes internal to sqlString will be escaped. This method is deprecated because we want to encourage everyone to use the "?" binding form. However, when implementing a ContentProvider, one may want to add WHERE clauses that were not provided by the caller. Since "?" is a positional form, using it in this case could break the caller because the indexes would be shifted to accomodate the ContentProvider's internal bindings. In that case, it may be necessary to construct a WHERE clause manually. This method is useful for those cases.

Parameters:
sb - the StringBuilder that the SQL string will be appended to
sqlString - the raw string to be appended, which may contain single quotes

sqlEscapeString

public static String sqlEscapeString(String value)
SQL-escape a string.


appendValueToSql

public static final void appendValueToSql(StringBuilder sql,
                                          Object value)
Appends an Object to an SQL string with the proper escaping, etc.


getCollationKey

public static String getCollationKey(String name)
return the collation key

Parameters:
name -
Returns:
the collation key

getHexCollationKey

public static String getHexCollationKey(String name)
return the collation key in hex format

Parameters:
name -
Returns:
the collation key in hex format

dumpCursor

public static void dumpCursor(Cursor cursor)
Prints the contents of a Cursor to System.out. The position is restored after printing.

Parameters:
cursor - the cursor to print

dumpCursor

public static void dumpCursor(Cursor cursor,
                              PrintStream stream)
Prints the contents of a Cursor to a PrintSteam. The position is restored after printing.

Parameters:
cursor - the cursor to print
stream - the stream to print to

dumpCursor

public static void dumpCursor(Cursor cursor,
                              StringBuilder sb)
Prints the contents of a Cursor to a StringBuilder. The position is restored after printing.

Parameters:
cursor - the cursor to print
sb - the StringBuilder to print to

dumpCursorToString

public static String dumpCursorToString(Cursor cursor)
Prints the contents of a Cursor to a String. The position is restored after printing.

Parameters:
cursor - the cursor to print
Returns:
a String that contains the dumped cursor

dumpCurrentRow

public static void dumpCurrentRow(Cursor cursor)
Prints the contents of a Cursor's current row to System.out.

Parameters:
cursor - the cursor to print from

dumpCurrentRow

public static void dumpCurrentRow(Cursor cursor,
                                  PrintStream stream)
Prints the contents of a Cursor's current row to a PrintSteam.

Parameters:
cursor - the cursor to print
stream - the stream to print to

dumpCurrentRow

public static void dumpCurrentRow(Cursor cursor,
                                  StringBuilder sb)
Prints the contents of a Cursor's current row to a StringBuilder.

Parameters:
cursor - the cursor to print
sb - the StringBuilder to print to

dumpCurrentRowToString

public static String dumpCurrentRowToString(Cursor cursor)
Dump the contents of a Cursor's current row to a String.

Parameters:
cursor - the cursor to print
Returns:
a String that contains the dumped cursor row

cursorStringToContentValues

public static void cursorStringToContentValues(Cursor cursor,
                                               String field,
                                               ContentValues values)
Reads a String out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The TEXT field to read
values - The ContentValues to put the value into, with the field as the key

cursorStringToInsertHelper

public static void cursorStringToInsertHelper(Cursor cursor,
                                              String field,
                                              DatabaseUtils.InsertHelper inserter,
                                              int index)
Reads a String out of a field in a Cursor and writes it to an InsertHelper.

Parameters:
cursor - The cursor to read from
field - The TEXT field to read
inserter - The InsertHelper to bind into
index - the index of the bind entry in the InsertHelper

cursorStringToContentValues

public static void cursorStringToContentValues(Cursor cursor,
                                               String field,
                                               ContentValues values,
                                               String key)
Reads a String out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The TEXT field to read
values - The ContentValues to put the value into, with the field as the key
key - The key to store the value with in the map

cursorIntToContentValues

public static void cursorIntToContentValues(Cursor cursor,
                                            String field,
                                            ContentValues values)
Reads an Integer out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The INTEGER field to read
values - The ContentValues to put the value into, with the field as the key

cursorIntToContentValues

public static void cursorIntToContentValues(Cursor cursor,
                                            String field,
                                            ContentValues values,
                                            String key)
Reads a Integer out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The INTEGER field to read
values - The ContentValues to put the value into, with the field as the key
key - The key to store the value with in the map

cursorLongToContentValues

public static void cursorLongToContentValues(Cursor cursor,
                                             String field,
                                             ContentValues values)
Reads a Long out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The INTEGER field to read
values - The ContentValues to put the value into, with the field as the key

cursorLongToContentValues

public static void cursorLongToContentValues(Cursor cursor,
                                             String field,
                                             ContentValues values,
                                             String key)
Reads a Long out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The INTEGER field to read
values - The ContentValues to put the value into
key - The key to store the value with in the map

cursorDoubleToCursorValues

public static void cursorDoubleToCursorValues(Cursor cursor,
                                              String field,
                                              ContentValues values)
Reads a Double out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The REAL field to read
values - The ContentValues to put the value into

cursorDoubleToContentValues

public static void cursorDoubleToContentValues(Cursor cursor,
                                               String field,
                                               ContentValues values,
                                               String key)
Reads a Double out of a field in a Cursor and writes it to a Map.

Parameters:
cursor - The cursor to read from
field - The REAL field to read
values - The ContentValues to put the value into
key - The key to store the value with in the map

cursorRowToContentValues

public static void cursorRowToContentValues(Cursor cursor,
                                            ContentValues values)
Read the entire contents of a cursor row and store them in a ContentValues.

Parameters:
cursor - the cursor to read from.
values - the ContentValues to put the row into.

queryNumEntries

public static long queryNumEntries(SQLiteDatabase db,
                                   String table)
Query the table for the number of rows in the table.

Parameters:
db - the database the table is in
table - the name of the table to query
Returns:
the number of rows in the table

longForQuery

public static long longForQuery(SQLiteDatabase db,
                                String query,
                                String[] selectionArgs)
Utility method to run the query on the db and return the value in the first column of the first row.


longForQuery

public static long longForQuery(SQLiteStatement prog,
                                String[] selectionArgs)
Utility method to run the pre-compiled query and return the value in the first column of the first row.


stringForQuery

public static String stringForQuery(SQLiteDatabase db,
                                    String query,
                                    String[] selectionArgs)
Utility method to run the query on the db and return the value in the first column of the first row.


stringForQuery

public static String stringForQuery(SQLiteStatement prog,
                                    String[] selectionArgs)
Utility method to run the pre-compiled query and return the value in the first column of the first row.


createDbFromSqlStatements

public static void createDbFromSqlStatements(Context context,
                                             String dbName,
                                             int dbVersion,
                                             String sqlStatements)
Creates a db and populates it with the sql statements in sqlStatements.

Parameters:
context - the context to use to create the db
dbName - the name of the db to create
dbVersion - the version to set on the db
sqlStatements - the statements to use to populate the db. This should be a single string of the form returned by sqlite3's .dump command (statements separated by semicolons)

Build 1.0_r1(from source)

Please submit a feedback, bug or feature