Menggunakan Database di Android Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.

dokumen-dokumen yang mirip
Program Database Sederhana di Android Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.

Aplikasi Android dengan Pre-built Database Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.

UNIVERSITAS KOMPUTER INDONESIA

Membuat Simple List Transaksi

Pertemuan 7. Create, Read, Update, Delete Pada SQL Lite (Tampilan)

Pertemuan 7. Create, Read, Update, Delete Pada SQL Lite (Tampilan)

PRAKTIKUM IX:TUTORIAL PEMBUATAN

BAB IV TESTING DAN IMPLEMENTASI SISTEM

Bab 4 Hasil dan Pembahasan

main activity resource layout

Tahap Instalasi PostgreSQL di Windows

BAB IV IMPLEMENTASI DAN PENGUJIAN

PEMROGRAMAN MOBILE PRAKTIKUM 11 ( DATABASE II ) Disusun oleh : CYNTHIA STEFFI CLIFF SI 12 A

E-trik Ajax. Database MySQL. Dedi Alnas

Instalasi Android SDK Maret 2012 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Windows XP, Eclipse

LAMPIRAN. 1. Konsultasi.java. package com.example.saksermu.dentalexsys;

Membuat JSP dan Servlet Sederhana

Mei 2006 Oleh : Feri Djuandi.

BAB III PEMBAHASAN 3.1 Analisa Sistem

INTRODUCTION TO ANDROID MOBILE APP DEVELOPMENT MUHAMMAD BAGIR., MTI

MEMULAI ECLIPSE. Juli 2009 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir.

Praktikum 1 - Getting Started with Android

PRAKTIKUM 6 SPINNER. 1. Aktifkanlah project baru, File New Project Android Application Project. Modul 6 Spinner Page 1

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON

Custom Button pada Android Februari 2012 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.3, Eclipse

Membuat Aplikasi Tampil, Entri, Edit, Delete Mahasiswa

Location Based Services

MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA UIN SUNAN KALIJAGA YOGYAKARTA 2011 PENGENALAN DATABASE MYSQL

BAB IV HASIL PENELITIAN DAN PEMBAHASAN. kosa kata dan arti kata adalah aplikasi kamus mobile di Android, karena mudah

KONEKSI NETBEANS DENGAN DATABASE SQLITE

MODUL 1 INSTALASI PAKET JAVA DAN PROGRAM SEDERHANA

Membuat project Android di Eclipse Struktur project pada eclipse Mengenal Tag Layout User Interface

Pertama tama install terlebih dahulu java versi terbaru pada. atau didalam

BAB IV IMPLEMENTASI DAN PENGUJIAN

TABEL. Tabel Halaman 25

Pembuatan Aplikasi Android Sederhana dengan Eclipse

Membuat Data Mahasiswa dengan Java Netbeans dan SQLite

BAB IV DESKRIPSI KERJA PRAKTEK

Pengenalan JavaScript

TUJUAN. Memahami Koneksi dan Pemrosesan Basis Data di Java Memahami JDBC Menggunakan MySQL pada program Java

Otodidak. MySQL untuk Pemula

INSTRUKSI PENCABANGAN

Didalam menampilkan peta yang sudah kita buat, kita akan menggunakan Slick2D sebagai sebuah frameworknya.

DASAR MENGGUNAKAN VISUAL BASIC 6.0

visit :

SERVLET. 5.1 Membuat Program Servlet

Mengenal Pemrograman PHP7 Database untuk Pemula

BAB 10 NETBEANS DATABASE

Praktikum XIV Aplikasi dengan Database SQLite

PENGENALAN MICROSOFT QUERY ANALYZER

IMPLEMENTASI PEMROGRAMAN VISUAL BASIC DENGAN DATABASE ACCESS

MENGAKSES DATABASE DENGAN JDBC

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

E-Trik Visual C++ 6.0

Pengenalan Script. Definisi HTML

DATABASE. Visual Data Manager

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

Cara Menggunakan MySQL

BAB VI Membuat Tombol Control pada Form

MANUAL PENGOPERASIAN JSTOCKINVENTORY Twitter

MODUL 6 JDBC (JAVA DATABASE CONNECTIVITY)

Persiapan Lingkungan Pengembangan Android

BAB I Penginstallan dan setting PHPTriad

Membuat Webservice Pada Visual Studio 2012 (C#.NET ver.4.5)

MySQL J A M K E T I G A

TABEL DATABASE TABEL - KODE BARANG TOKO INFOMART BARANG - NAMA BARANG - HARGA

Persiapan. 2.1 Hardware

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM

BONUS. Dasar Java Mobile. Mengenal Java Mobile Mengenal MIDlet Mobile Grafis Mobile Animasi Latihan Soal

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM. Pada awal tahap implementasi ini diuraikan spesifikasi perangkat keras dan

Bab I Pengenalan Visual BASIC

Prosedur Menjalankan Program / Alat

1. MENGENAL VISUAL BASIC

Achmad Solichin

Latihan 1: Menginstal Web Server Apache, PHP, dan MySQL

BAB IV IMPLEMENTASI DAN PENGUJIAN

Membuat Aplikasi Sederhana Hello World untuk Android

Web Service: Memulai Proyek

PEMROGRAMAN MOBILE. NANDANG HERMANTO. S.Kom Pemrograman Mobile : Nandang Hermanto

1. Hasil ERD dari Tabel satu adalah sebagai berikut: Figure 1: ERD Apotik. 2. Syntax CREATE tabel untuk masing - masing tabel :

Gambar 2. 1 Kotak dialog Pilihan Bahasa

Sistem Informasi Royalti

1. Prosedur Persiapan Aplikasi Berikut ini adalah panduan untuk melakukan install aplikasi untuk dapat menjalankan program penilai esai otomatis :

BAB IV IMPLEMENTASI DAN PENGUJIAN

UNIVERSITAS KOMPUTER INDONESIA

APLIKASI WEB DINAMIS LANJUT TUGAS 1

Membuat Tab Layout Menggunakan Android Material Design

LAPORAN RESMI. PRAKTIKUM TEKNOLOGI WEB Pengenalan JavaScript

LAB02 : KODING PROGRAM

Menampilkan Map. B. Menambahkan referensi library google-play-service.jar ke dalam project

Modul Pengembangan Aplikasi Android Berbasis Client- Server Aplikasi sederhana android Versi 1.0

Mengenal dan Mulai Bekerja dengan Access 2007

Prosedur Menjalankan Aplikasi Penjualan dan Perhitungan Biaya Produksi. (dengan Metode Job Order Costing pada PT. NUTECH PUNDI ARTA)

Latihan 1 Menghitung Luas Persegi Panjang

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Latihan 2 List Menu Bertingkat

Gambar Tampilan aplikasi Database Android 2

Ginanjar Utama Workbench Tempat Bekerja

Instalasi Web Server Apache, PHP, dan MySQL dengan XAMPP

Transkripsi:

Menggunakan Database di Android Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.3, Eclipse, SQLite Dengan semakin beragamnya pengembangan berbagai aplikasi di platform Android dewasa ini, beberapa aplikasi mulai berkembang semakin kompleks dan membutuhkan media penyimpanan informasi dalam bentuk database terstruktur. Para programmer Android sangat beruntung karena Android menyediakan sebuah database yang secara default sudah ada di dalam library Android, yaitu SQLite. Untuk keperluan operasi database pada smartphone atau tablet Android, SQLite sangat memadai karena ukurannya yang kecil, cepat dan ringan dalam hal sumber daya. Karena sifatnya sebagai embedded database, SQLite tidak memiliki server namun bentuknya adalah library yang akan dipanggil saat program dijalankan. Seperti halnya database pada umumnya, SQLite memiliki objek-objek seperti table, view dan index. Perintah-perintah SQL-nya pun sangat mirip seperti yang biasa digunakan yaitu SELECT, INSERT, UPDATE, DELETE dan sebagainya. Informasi mengenai SQLite dapat dibaca secara lengkap pada situs resminya di: http://www.sqlite.org CATATAN: Untuk mulai mengembangkan aplikasi Android menggunakan SQLite, tidak ada instalasi tambahan yang perlu dilakukan karena library SQLite sudah ada di dalam framework Android. Database SQLite diaktifkan di dalam program dengan cara meng-import library SQLite pada program header, misalnya: import android.database.sqlite.sqlitedatabase; import android.database.sqlite.sqliteopenhelper; Pada umumnya aplikasi dengan embedded database tidak menyertakan database yang sudah berbentuk pada saat aplikasi itu diinstal pada perangkat. Jadi yang diinstal hanya programnya, sedangkan databasenya tidak ada sama sekali. Database akan dibuat pada saat aplikasi itu dijalankan pertama kali, yaitu program akan memeriksa apakah database ditemukan. Jika database tidak ditemukan maka serangkaian perintah SQL akan menjalankan perintah CREATE yang akan membentuk file database diikuti dengan table-table di dalamnya. Tentunya programmer harus membuat sendiri perintah SQL tersebut secara spesifik tergantung struktur data di dalam aplikasi yang dibuatnya. Ini adalah teknik yang biasanya digunakan programmer dalam membuat sebuah aplikasi dengan embedded database dimana ia tidak menyertakan file database di dalam paket instalasi aplikasi. Berikut ini diperlihatkan sebuah contoh program menggunakan SQLite. - 1 -

1. Jalankan program Eclipse dan buat sebuah Android Project baru. 2. Beri nama pada projek tersebut, kemudian masukkan pilihan build target dan lengkapi property seperti ditunjukkan pada gambar di bawah ini. Tekan Finish untuk melanjutkan. - 2 -

Dari beberapa literatur yang saya baca, praktek yang dianjurkan untuk membuat program database adalah memisahkan antara program utama dengan program yang menangani perintah-perintah operasi database seperti membuat table, menambah baris, mengubah data dan sebagainya. Tujuannya adalah tidak mencampur-adukkan logika bisnis dengan operasi tingkat rendah (SELECT, INSERT, UPDATE dan DELETE) yang akan membuat kode program sulit dibaca dan berkesan rumit sekali. Untuk tujuan kerapihan program, akan jauh lebih baik jika program utama fokus hanya pada jalannya alur program utama, sementara fungsi-fungsi database dipisahkan ke dalam program yang lain. Program utama cukup memanggil fungsi-fungsinya secara sederhana dengan satu baris perintah saja, walaupun sebetulnya fungsi itu ditulis dengan baris yang panjang dan proses yang rumit di bagian program yang lain. Kita akan menerapkan teknik pemrograman tersebut dengan membuat sebuah class bernama DBAdapter yang khusus menangani operasi database. 3. Tambahkan sebuah class baru dan beri nama DBAdapter. Tekan Finish untuk melanjutkan. - 3 -

4. Tambahkan perintah import berikut ini pada program header DBAdapter.java. Perhatikan beberapa library SQLite yang akan digunakan disebutkan di situ.... import android.content.contentvalues; import android.content.context; import android.database.cursor; import android.database.sqlexception; import android.database.sqlite.sqlitedatabase; import android.database.sqlite.sqliteopenhelper; import android.util.log;... 5. Ketikkan skrip berikut ini di dalam class DBAdapter. Perhatikan class ini mengandung sebuah constructor DBAdapter(Context) untuk menginisiasi class, kemudian method open dan close masing-masing untuk membuka dan menutup database. public class DbAdapter { private static final String TAG="DbAdapter"; private static final String DATABASE_NAME="books"; private static final int DATABASE_VERSION=1; private static final String TABLE_CREATE = "create table titles (_id integer primary key autoincrement, " + "isbn text not null, title text not null, " + "publisher text not null)"; private static final String TABLE_DROP = "DROP TABLE IF EXISTS titles"; private final Context context; private DatabaseHelper dbhelper; private SQLiteDatabase db; public DbAdapter(Context ctx) { this.context = ctx; dbhelper = new DatabaseHelper(this.context); private static class DatabaseHelper extends SQLiteOpenHelper { DatabaseHelper(Context ctx) { super(ctx, DATABASE_NAME, null, DATABASE_VERSION); @Override public void oncreate(sqlitedatabase db) { db.execsql(table_create); + newversion @Override public void onupgrade(sqlitedatabase db, int oldversion, int newversion) { Log.w(TAG, "Upgrading database from version " + oldversion + " to " + ", which will destroy all old data"); db.execsql(table_drop); oncreate(db); public DbAdapter open() throws SQLException { db = dbhelper.getwritabledatabase(); return this; public void close() { dbhelper.close(); - 4 -

Skrip di atas merupakan contoh program DBAdapter yang relatif generik. Program ini bisa dijadikan semacam cetakan untuk program-program lain karena program ini bentuknya masih umum dan belum mengandung fungsi-fungsi yang spesifik. Konstantakonstanta seperti DATABASE_NAME, TABLE_CREATE, TABLE_DROP bisa diubah isinya untuk disesuaikan dengan kebutuhan. Nantinya ke dalam program DBAdapter ini harus ditambahkan fungsi-fungsi database misalnya insertbook, updatebook dan sebagainya dengan baris-baris kode yang spesifik. 6. Sampai tahap ini jalankan aplikasi tersebut untuk menguji-coba dengan cara klik-kanan nama pada projek di dalam Package Explorer, kemudian pilih Run As Android Application. Tunggu sejenak sampai emulator Android ditampilkan dan menjalankan aplikasi ini. Sepintas Anda tidak akan melihat sesuatu yang istimewa pada tampilan aplikasi tersebut, kecuali sebuah pesan yang muncul pada emulator. Sesungguh aplikasi ini menjalankan sesuatu yang istimewa saat ia dijalankan pertama kali. Perhatikan potongan-potongan program berikut ini. - 5 -

MainActivity.java DBAdapter.java DBAdapter db = new DBAdapter(this); public DBAdapter(Context ctx) { this.context = ctx; dbhelper = new DatabaseHelper this.context); private static class DatabaseHelper extends SQLiteOpenHelper { DatabaseHelper(Context ctx) { super(ctx, DATABASE_NAME, null, DATABASE_VERSION); @Override public void oncreate(sqlitedatabase db) { db.execsql(table_create); private static final String TABLE_CREATE = "create table titles (_id integer primary key autoincrement, " + "isbn text not null, title text not null, " + "publisher text not null)"; Saat MainActivity.java membuat objek DBAdapter dengan di dalam baris DBAdapter db = new DBAdapter(this); maka rangkaian pemanggilan baris-baris program lainnya akan dijalankan seperti diperlihatkan pada gambar di atas, seperti pembuatan objek DatabaseHelper dan pemanggilan method super, oncreate dan terakhir yang berujung pada dijalankannya method execsql untuk membuat sebuah table bernama titles. Tanpa disadari sebuah file database bernama books dengan sebuah table titles di dalamnya telah terbentuk. Lalu sekarang bagaimana memastikan database ini telah terbentuk? Satusatunya cara tentunya harus menemukan bahwa file database itu memang ada, bukan? 1. Jalankan menu Window Open Perpective DDMS atau cukup meng-klik icon DDMS perpective pada sudut kanan-atas layar. - 6 -

2. Pada tab File Explorer, buka folder data data. 3. Cari nama package dari projek ini (pada contoh ini adalah net.houseoflife.dbsample), kemudian buka foldernya hingga ditemukan folder databases dan sebuah file database di dalamnya. Itu adalah file database SQLite yang dibentuk oleh aplikasi tersebut. File database SQLite yang tampak pada File Explorer perlu dibuka untuk memastikan sebuah table telah terbentuk di dalamnya. Database itu tidak dapat langsung dibuka di dalam Eclipse tetapi harus dibuka menggunakan sebuah program yang bernama SQLite Manager. Program ini akan dijelaskan kemudian, tetapi untuk saat ini file database ini harus dibawa keluar dari emulator agar bisa diakses dari komputer lokal. 1. Pastikan file database disorot/dipilih pada File Explorer, kemudian klik icon dengan tulisan Pull a file from the device pada sudut kanan-atas layar. 2. Simpan file tersebut pada komputer lokal. - 7 -

SQLite Manager adalah sebuah program yang sangat membantu programmer dalam mengelola database SQLite seperti membuat table, index dan menjalankan perintah-perintah SQL. Program ini sangat mudah digunakan dan betul-betul bermanfaat untuk berbagai keperluan praktis. Satu hal lagi yang tidak kalah pentingnya: program ini gratis. Selain SQLite Manager, ada beberapa program lain yang tujuannya serupa namun saya menganjurkan program ini karena ia yang paling populer digunakan saat ini. SQLite Manager adalah sebuah program add-on pada program Mozilla Firefox sehingga pastikan pada komputer Anda telah terinstal program browser tersebut sebelumnya. Untuk mengsinstal SQLite Manager, silakan mengunduh add-on-nya pada alamat berikut ini dan ikuti instruksinya. https://addons.mozilla.org/id/firefox/addon/sqlite-manager/ Saya tidak mengetahui apakah add-on SQLite Manager juga tersedia untuk browser yang lain seperti Internet Explorer atau Chrome, saya persilakan pembaca untuk mencarinya sendiri. Setelah add-on berhasil terinstal, jalankan program ini melalui Mozilla Firefox. 1. Jalankan menu Tools SQLite Manager. 2. Setelah SQLite Manager muncul, jalankan menu Database Connect Database, kemudian buka file database yang telah tersimpan di dalam komputer lokal tadi. 3. Saat file database telah dibuka, perhatikan bahwa table titles tampak di dalamnya. Silakan lihat isi table tersebut dengan menjalankan perintah SQL pada kotak Execute SQL. Demikianlah Anda telah melihat bagaimana aplikasi Android membuat sebuah database SQLite saat ia dijalankan. Jika aplikasi ini dijalankan lagi untuk ke-dua kali dan seterusnya, file database tidak akan dibuat lagi karena ia sudah ada. File database itu akan langsung dibuka dan digunakan oleh aplikasi yang bersangkutan. - 8 -