Membuat Android SQLite Database (part 2)

Download Aplikasi

Nah disini kita akan membuat class DatabaseAdapter. Untuk source code bisa didownload di link yang ada di atas.

1. Buat New Android Application Project, untuk minSDK : API 15, targetSDK : API 20, compileWith : API 20. Nama Main Activity’nya “MainActivity“, n nama layout’nya “activity_main“.

2. Buat New Class untuk class Database Adapter, beri nama class “DBAdapter.java“, dan ubah nama package sesuai nama package yg digunakan saat membuat project.

classDBAdapter1

  • Baris 2 – 9 :
    Nama package dan statement import class yg akan digunakan.
  • Baris 12 :
    Statement untuk membuat class DBAdapter.
  • Baris 17 :
    Membuat kolom pertama yaitu “_id”. Untuk kolom pertama selalu direkomendasikan menggunakan nama “_id”.
  • Baris 20 – 22 :
    Membuat kolom nama, zodiak, dan email.
  • Baris 25 :
    Membuat array String yg berisi semua KEY
  • Baris 28 – 31 :
    Membuat nomor untuk urutan setiap kolom

classDBAdapter2

  • Baris 34 – 36 :
    Membuat informasi database seperti nama database, nama tabel dan versi database. Versi database harus lebih besar setiap kita melakukan upgrade database (seperti menambah atau menghapus kolom). Jika kita melakukan upgrade pada database tanpa menaikkan versi database, maka perubahan tidak akan dieksekusi. Hal ini dikarenakan untuk melakukan upgrade database, kita menggunakan metode onUpgrade(). Dan method onUpgrade menggunakan parameter versi lama dan versi baru sebelum melakukan upgrade. Jika versi baru lebih besar dari versi lama, maka database terlebih dahulu akan dihapus baru kemudian dibuat kembali. Biasanya versi database naik berurutan dari 1 ke 2 ke 3 dst. (increment).
  • Baris 40 – 45 :
    Membuat statement untuk membuat database yang kemudian dimasukkan ke dalam variabel String.
  • Baris 48 :
    Membuat context.
  • Baris 51 :
    Membuat objek myDBHelper dari class DatabaseHelper yg meng’extends class SQLiteOpenHelper (yg dibuat di baris 123).
  • Baris 54 :
    Membuat objek db dari class SQLiteDatabase yg diimport.
  • Baris 57 – 60 :
    Mengatur context DatabaseHelper.

classDBAdapter3

  • Baris 63 – 65 :
    Method untuk membuka database.
  • Baris 69 – 71 :
    Method untuk menutup database.
  • Baris 74 – 81 :
    Method untuk insert data ke dalam tabel dengan tiga parameter. Pada setiap data yg diinsert, rowID akan secara otomatis berubah menjadi lebih besar (auto increment). Dalam SQLite, untuk menginsert data ke dalam tabel, kita harus menggunakan objek “ContentValues” yg mempunyai method “put”, yg berfungsi seperti wadah. Setelah itu barulah data yg berada pada objek ContentValues dimasukkan ke dalam tabel seperti yg ditunjukkan pada baris 80.
  • Baris 84 – 87 :
    Method untuk menghapus data dengan mengacu pada rowId yg diberikan sebagai parameter.

classDBAdapter4

  • Baris 90 – 97 :
    Method untuk mengambil semua data pada tabel.
  • Baris 100 – 108 :
    Method untuk mengambil data yg spesifik dengan mengacu pada rowId yg diberikan sebagai parameter.
  • Baris 111 – 119 :
    Method untuk mengupdate data dengan mengacu pada rowId yg diberikan sebagai parameter.

classDBAdapter5

  • Baris 122 :
    Statement untuk membuat class DatabaseHelper yg meng’extends class SQLiteOpenHelper.
  • Baris 130 – 133 :
    Membuat method onCreate() yg berfungsi untuk membuat database. Method ini menggunakan variabel String yg dibuat pada baris 39 – 45 sebagai parameter.
  • Baris 138 – 146 :
    Membuat method onUpgrade() yg berfungsi untuk meng’upgrade database. Pertama database versi lama dihapus, kemudian database versi baru dibuat.

Next part kita akan modifikasi class MainActivity dan membuat class-class lainnya yang dibutuhkan beserta user interfacenya.

Thx 🙂

Reference : lecture snippets

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s