Tutorial Android SQLite Database Bagian 1

Android DB 1

Sesuai janji saya di akhir artikel Android Membuat Custom ListView maka pada tulisan ini saya akan menulis mengenai pemrograman database pada Android menggunakan SQLite database. Android mempunyai beberapa teknik untuk menyimpan data, dari yang sangat sederhana menggunakan Intent, kemudian SharedPreferences dan yang akan dibahas disini,SQLite database.

Struktur Tabel

Tutorial ini menggunakan tabel dengan nama t_buku yang digunakan untuk menyimpan data buku. Berikut ini adalah struktur dari tabel tersebut.

1. kolom id dengan tipe Integer dan sekaligus sebagai Primary Key
2. kolom judul dengan tipe TEXT
3. kolom penulis dengan tipe TEXT

Kelas Domain

Seperti biasa ketika akan melakukan operasi yang berhubungan dengan suatu data maka kita modelkan data tersebut menjadi sebuah kelas Java. Pada kasus ini kita akan berurusan dengan data buku, maka kita buat sebuah kelas dengan nama Buku beserta property-nya yang menyesuaikan dengan kolom pada tabel yang telah kita buat diatas.
Berikut ini adalah kodenya

file : Buku.java

Database Handler

Untuk akses ke database kita buat sebuah kelas yang khusus menangani operasi-operasi database (CRUD). Android menyediakan sebuah kelas helper yang bernama SQLiteOpenHelper untuk memudahkan kita dalam membuat kelas database handler.

Buat sebuah kelas dengan nama DatabaseHandler yang merupakan turunan dari SQLiteOpenHelper

Kita perlu melakukan override terhadap dua method yaitu onCreate dan onUpdate. onCreate dijalankan untuk membuat sebuah tabel baru, method ini dijalankan ketika database pertama kali dibuat, sedangkan onUpdate digunakan untuk memperbaharui tabel seperti mengganti struktur tabel dan lain sebagainya.

⇒Operasi CRUD

Selanjutnya kita akan menulis method-method yang digunakan untuk proses manipulasi database. Berikut adalah method yang akan kita buat implementasinya

Poin-poin selanjutnya akan membahas implementasi dari method-method diatas.

⇒Memasukkan Data

Method save() digunakan untuk menyimpan data baru kedalam database. Method ini mempunyai parameter berupa objek dari kelas Buku. ContentValues digunakan untuk memberikan nilai pada kolom tabel. Selanjutnya proses menyimpan data tinggal memanggil method insert() yang dimiliki oleh SQLiteOpenHelper

⇒Mengambil Satu Data

Method berikut ini bertugas mengambil satu baris data pada database dengan parameter yang dimiliki berupa id. Method ini akan mengembalikan sebuah objek kelas Buku yang memiliki id yang sesuai dengan parameter.

⇒Mengambil Semua Data

Mengambil semua data yang ada pada database perlu melakukan perulangan pada Cursor untuk kemudian mengubahnya menjadi objek buku dan dimasukkan pada sebuah list.

⇒Mengupdate Data

Method berikut akan memperbaharui data pada database.

⇒Menghapus Data

Dan terakhir adalah method delete() yang digunakan untuk menghapus data pada database

Database Handler Lengkap

Setelah potongan-potongan kode diatas disatukan maka berikut ini adalah kode dari kelas DatabaseHandler yang lengkap

file : DatabaseHandler.java

Kelas Activity

Kelas untuk proses manipulasi database sudah kita buat, sekarang saatnya bagi kita menggunakannya. Pada Activity ini kita hanya akan mengecek apakah kelas DatabaseHandler sudah berfungsi sebagaimana mestinya dalam artian tiap method yang dimiliki benar-benar berjalan dengan baik. Method save() benar menyimpan data atau tidak, method delete() benar-benar menghapus data atau tidak dan method-method lainnya. Kali ini kita hanya akan mengeceknya secara manual menggunakan fitur LogCat di Eclipse. Untuk cara canggihnya menggunakan integration test yang akan saya bahas pada tulisan-tulisan mendatang.

Oke jadi seperti inilah kelas Activity kita
file : BukuActivity.java

Hasil Log

Berikut ini adalah hasil log dari aplikasi kita. Coba perhatikan hasilnya, dari disitu dapat disimpulkan bahwa DatabaseHandler sudah berfungsi dengan benar.

log

Penutup

Sampai disini kita sudah berhasil membuat sebuah kelas yang bertugas untuk melakukan proses manipulasi pada database. Semoga tutorial ini bermanfaat.

Pada tulisan berikutnya kita akan menggabungkan apa yang telah dipelajari hari ini dengan GUI pada Android sehingga untuk proses save, edit, finOne dan delete bisa melalui antarmuka tersebut :D.

Facebook Comments
 

Agung Setiawan

Agung Setiawan adalah software engineer di BukaLapak.com, penulis sekaligus pecinta sastra, dan pembaca buku

 
Halo, perkenalkan saya Agung Setiawan.
Saya Software Engineer di BukaLapak.
Simak pemikian saya soal dunia Software Engineering via Twitter di @agungsetiawanmu dan facebook
Blog ini saya update seminggu sekali jadi sering-sering saja mampir
Mau belajar Vim bareng saya?
Belajar ngoding dari nol menggunakan PHP

3 thoughts on “Tutorial Android SQLite Database Bagian 1

  1. untung nyasar kesini. baru kali ini dapet tutorial yg langsung ngakar dipahami nih. thankyouuu.
    ayo mas, smg punya banyak waktu luang buat bikin next tutornya.. pasti banyak yg nunggu nih buat GUInya sekalian.
    😀

  2. mas gmna kalau kita mau buat 2 atau 3 database baru, gmna cara ya dan apakah kita harus buat class activity dan Database Handler ya 3 juga. tolong pencerahan ya…..

Leave a Reply

Your email address will not be published. Required fields are marked *