From 802254faa17f64310f16ea208ca003ef9d13c82c Mon Sep 17 00:00:00 2001
From: Scott Main
Date: Mon, 10 Jun 2013 13:49:53 -0700
Subject: fix typo and clarify class references in database lesson bug: 9372560
Change-Id: I703c4196a026cb0b1469ee55491ee674868768ca
---
.../html/training/basics/data-storage/databases.jd | 66 +++++++++++-----------
1 file changed, 32 insertions(+), 34 deletions(-)
diff --git a/docs/html/training/basics/data-storage/databases.jd b/docs/html/training/basics/data-storage/databases.jd
index 61fb7583f2e8..6ea2140d6c0b 100644
--- a/docs/html/training/basics/data-storage/databases.jd
+++ b/docs/html/training/basics/data-storage/databases.jd
@@ -73,25 +73,23 @@ single table:
-public static abstract class FeedEntry implements BaseColumns {
- public static final String TABLE_NAME = "entry";
- public static final String COLUMN_NAME_ENTRY_ID = "entryid";
- public static final String COLUMN_NAME_TITLE = "title";
- public static final String COLUMN_NAME_SUBTITLE = "subtitle";
- ...
+public final class FeedReaderContract {
+ // To prevent someone from accidentally instantiating the contract class,
+ // give it an empty constructor.
+ public FeedReaderContract() {}
+
+ /* Inner class that defines the table contents */
+ public static abstract class FeedEntry implements BaseColumns {
+ public static final String TABLE_NAME = "entry";
+ public static final String COLUMN_NAME_ENTRY_ID = "entryid";
+ public static final String COLUMN_NAME_TITLE = "title";
+ public static final String COLUMN_NAME_SUBTITLE = "subtitle";
+ ...
+ }
}
-To prevent someone from accidentally instantiating the contract class, give
-it an empty constructor.
-
-
-// Prevents the FeedReaderContract class from being instantiated.
-private FeedReaderContract() {}
-
-
-
Create a Database Using a SQL Helper
@@ -103,15 +101,15 @@ statements that create and delete a table:
private static final String TEXT_TYPE = " TEXT";
private static final String COMMA_SEP = ",";
private static final String SQL_CREATE_ENTRIES =
- "CREATE TABLE " + FeedReaderContract.FeedEntry.TABLE_NAME + " (" +
- FeedReaderContract.FeedEntry._ID + " INTEGER PRIMARY KEY," +
- FeedReaderContract.FeedEntry.COLUMN_NAME_ENTRY_ID + TEXT_TYPE + COMMA_SEP +
- FeedReaderContract.FeedEntry.COLUMN_NAME_TITLE + TEXT_TYPE + COMMA_SEP +
+ "CREATE TABLE " + FeedEntry.TABLE_NAME + " (" +
+ FeedEntry._ID + " INTEGER PRIMARY KEY," +
+ FeedEntry.COLUMN_NAME_ENTRY_ID + TEXT_TYPE + COMMA_SEP +
+ FeedEntry.COLUMN_NAME_TITLE + TEXT_TYPE + COMMA_SEP +
... // Any other options for the CREATE command
" )";
private static final String SQL_DELETE_ENTRIES =
- "DROP TABLE IF EXISTS " + TABLE_NAME_ENTRIES;
+ "DROP TABLE IF EXISTS " + FeedEntry.TABLE_NAME;
Just like files that you save on the device's
@@ -227,18 +225,18 @@ SQLiteDatabase db = mDbHelper.getReadableDatabase();
// Define a projection that specifies which columns from the database
// you will actually use after this query.
String[] projection = {
- FeedReaderContract.FeedEntry._ID,
- FeedReaderContract.FeedEntry.COLUMN_NAME_TITLE,
- FeedReaderContract.FeedEntry.COLUMN_NAME_UPDATED,
+ FeedEntry._ID,
+ FeedEntry.COLUMN_NAME_TITLE,
+ FeedEntry.COLUMN_NAME_UPDATED,
...
};
// How you want the results sorted in the resulting Cursor
String sortOrder =
- FeedReaderContract.FeedEntry.COLUMN_NAME_UPDATED + " DESC";
+ FeedEntry.COLUMN_NAME_UPDATED + " DESC";
Cursor c = db.query(
- FeedReaderContract.FeedEntry.TABLE_NAME, // The table to query
+ FeedEntry.TABLE_NAME, // The table to query
projection, // The columns to return
selection, // The columns for the WHERE clause
selectionArgs, // The values for the WHERE clause
@@ -262,7 +260,7 @@ For example:
cursor.moveToFirst();
long itemId = cursor.getLong(
- cursor.getColumnIndexOrThrow(FeedReaderContract.FeedEntry._ID)
+ cursor.getColumnIndexOrThrow(FeedEntry._ID)
);
@@ -282,7 +280,7 @@ immune to SQL injection.
// Define 'where' part of query.
-String selection = FeedReaderContract.FeedEntry.COLUMN_NAME_ENTRY_ID + " LIKE ?";
+String selection = FeedEntry.COLUMN_NAME_ENTRY_ID + " LIKE ?";
// Specify arguments in placeholder order.
String[] selectionArgs = { String.valueOf(rowId) };
// Issue SQL statement.
@@ -305,10 +303,10 @@ SQLiteDatabase db = mDbHelper.getReadableDatabase();
// New value for one column
ContentValues values = new ContentValues();
-values.put(FeedReaderContract.FeedEntry.COLUMN_NAME_TITLE, title);
+values.put(FeedEntry.COLUMN_NAME_TITLE, title);
// Which row to update, based on the ID
-String selection = FeedReaderContract.FeedEntry.COLUMN_NAME_ENTRY_ID + " LIKE ?";
+String selection = FeedEntry.COLUMN_NAME_ENTRY_ID + " LIKE ?";
String[] selectionArgs = { String.valueOf(rowId) };
int count = db.update(
--
cgit v1.2.3-59-g8ed1b