PMO Pertemuan 8 – Android Database (SQLite)
Android Database ( SQLite ) A. Database Android Android menyediakan dukungan penuh untuk database SQLite. Setiap database yang Anda buat akan bisa diakses berdasar nama untuk setiap kelas dalam aplikasi, tapi tidak di luar aplikasi. Metode yang disarankan untuk membuat database SQLite baru adalah dengan membuat subkelas dari SQLiteOpenHelper dan mengganti metode onCreate(), di mana Anda bisa menjalankan perintah SQLite untuk membuat tabel dalam database. B. Contoh : public class DictionaryOpenHelper extends SQLiteOpenHelper { private static final int DATABASE_VERSION = 2; private static final String DICTIONARY_TABLE_NAME = “dictionary”; private static final String DICTIONARY_TABLE_CREATE = “CREATE TABLE ” + DICTIONARY_TABLE_NAME + ” (” + KEY_WORD + ” TEXT, ” + KEY_DEFINITION + ” TEXT);”; DictionaryOpenHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(DICTIONARY_TABLE_CREATE); } } C. Men-Debug Database Android SDK menyertakan alat database sqlite3 yang memungkinkan Anda untuk menjelajah isi tabel, menjalankan perintah SQL, dan melakukan fungsi penting lainnya pada database SQLite D. Menyimpan Database di SQL Menyimpan data ke database cocok untuk data terstruktur atau berulang, misalnya informasi kontak. Kelas ini beranggapan bahwa Anda telah menguasai database SQL secara umum dan membantu Anda memulai database SQLite di Android. API yang nanti Anda perlukan untuk menggunakan database di Android tersedia dalam paket android.database.sqlite. E. Membuat database menggunakan SQL Helper Setelah mendefinisikan penampilan database, Anda harus mengimplementasikan metode yang membuat dan memelihara database dan tabel. Inilah beberapa pernyataan umum yang membuat dan menghapus tabel: private static final String TEXT_TYPE = ” TEXT”; private static final String COMMA_SEP = “,”; private static final String SQL_CREATE_ENTRIES = “CREATE TABLE ” + FeedEntry.TABLE_NAME + ” (” + FeedEntry._ID + ” INTEGER PRIMARY KEY,” + FeedEntry.COLUMN_NAME_TITLE + TEXT_TYPE + COMMA_SEP + FeedEntry.COLUMN_NAME_SUBTITLE + TEXT_TYPE + ” )”; private static final String SQL_DELETE_ENTRIES = “DROP TABLE IF EXISTS ” + FeedEntry.TABLE_NAME; Serangkaian API berguna tersedia di kelas SQLiteOpenHelper. Bila Anda menggunakan kelas ini untuk memperoleh referensi ke database, sistem akan melakukan operasi pembuatan dan pembaruan database yang berpotensi berjalan lama hanya bila diperlukan dan tidak selama memulai aplikasi. Yang perlu Anda lakukan hanyalah memanggil getWritableDatabase() atau getReadableDatabase(). Catatan:Karena itu berjalan lama, pastikan Anda memanggil getWritableDatabase() atau getReadableDatabase() di thread latar belakang, misalnya dengan AsyncTask atau IntentService. Untuk menggunakan SQLiteOpenHelper, buat subkelas yang mengganti onCreate(), onUpgrade() dan metode callback onOpen() . Anda juga mungkin perlu mengimplementasikan onDowngrade(), namun itu tidak diharuskan. Untuk mengakses database, buat instance subkelas SQLiteOpenHelper: FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(getContext()); F. Memperbarui Database Bila Anda perlu memodifikasi subset nilai database, gunakan metode update(). […]