PEMROGAMAN MOBILE ANDROID DATABASE : SQLiTE Kelompok 3 1. Agung Edi W 2. Faizal Aji R 3. Khaerul Imam 4. Abdurahman 5. Eko Prasetyo 6. Windu Febriansah 7. Fachrul Rosi
Definisi sqlite SQLite merupakan sebuah Database yang bersifat ACID- compliant dan memiliki ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C. Android menyediakan database relasional yang ringan untuk setiap aplikasi menggunakan SQLite.Aplikasi dapat mengambil keuntungan dari itu untuk mengatur relational database engine untuk menyimpan data secara aman dan efiesien. Untuk Android, SQLite dijadikan satu di dalam Android runtime, sehingga setiap aplikasi Android dapat membuat basis data SQLite. Karena SQLite menggunakan antarmuka SQL, cukup mudah untuk digunakan orang orang dengan pengalaman lain yang berbasis databases.
SQLite dapat digunakan di Windows Phone, Android, iPhone, PHP, Firefox, Chrome dan lain – lain yang dapat dilihat di: http://www.sqlite.org/famous.html. Pada browser, biasanya SQLite ini digunakan untuk menyimpan kongfigurasi seperti history, bookmark, dan cache, sedangkan pada mobile, penggunaan SQLite ini sangat banyak seperti kontak, database tabel dsb. Contoh produk yang memakai SQLite : PHP, Firefox, Chrome, iPhone dan Android adalah contoh produk yang menggunakan SQlite. di Browser firefox, Sqlite dipakai untuk menyimpan konfigurasi, bookmark dan history website sedangkan di smartphone android, SQLite dipakai untuk menyimpan contact.
STRUKTUR DATABASE Database SQLite dibuat pada aplikasi selalu disimpan dalam /data/data/<nama package>/folder database. SQLiteOpenHelper.Pada class ini kamu perlu override method berikut ini untuk membuat dan meng-upgrade database. > onCreate(), dipanggil ketika database dapat diakses namum belum dibuat. > onUpdate(), dipanggil ketika aplikasi diupgrade dan nomor versi telah berubah pada kode aplikasi android. method ini memungkinkan untuk memperbarui(update) skema database yang ada atau drop database yang ada dan menciptakan kembali melalui method OnCreate (). Class SQLiteOpenHelper menyediakan method getReadableDatabase () dan getWritableDatabase (), untuk mendapatkan akses ke objek SQLiteDatabase.
> SQLiteDatabase merupakan sebeuah kelas yang mempunya method- method seperti : Insert() = untuk menambahkan baris ke database Update () = untuk memperbarui baris pada database Delete () = untuk menghapus baris pada database execSQL () = untuk mengeksekusi sintak SQL SQLiteOpenHelper merupakan subclass yang memiliki beberapa method seperti : onCreate() = di jalankan jika sebelum'nya belum ada database onUpgrade() = di jalankan jika sebelum'nya sudah di temukan database yang sama tapi beda versi, method ini bisa di manfaatkan untuk mengubah sekema database onOpen() = di jalankan jika database dalam keadaan open getWritableDatabase() = memanggil database agar bisa di masuki data getReadableDatabase() = memanggil database agar bisa dibaca data'nya
Kelebihan dari database sqlite 1. Mudah Dikelola SQLite mudah dikelola karena SQLite merupakan file tunggal (atau beberapa file saja dengan tambahan log transaksi). Bila dibandingkan dengan database lainnya, SQLite juga tidak membutuhkan konfigurasi banyak.Selain itu, format filenya juga stabil di versi utama.Jadi, jika punya file database SQLite dari versi 3.0.0, pembaca tetap bisa membacanya dengan menggunakan SQLite terbaru 3.10.0. Jika pembaca ingin mengambil file database pada thumb drive, pembaca hanya perlu menyalin filenya saja. 2. Sangat Stabil SQLite secara aktif dikembangkan oleh beberapa software engineer yang handal. Dalam waktu beberapa bulan, SQLite sering dirilis.Banyak fitur yang telah ditambahkan. Meskipun banyak fitur yang sering ditambahkan, SQLite jarang menemukan bug didalamnya.Karena sebelum dirilis, SQLite di uji dengan pengujian yang cukup ketat.
3. Bisa Diperluas SQLite juga bisa diperluas dengan ekstensi dan diintegrasikan dengan API.Salah satu contohnya adalah modul Python Pysqlite yang menjadi driver untuk SQLite.Ada juga modul Python Apsw yang menjadi driver alternatif SQLite.Modul Apsw menyediakan banyak API yang berguna untuk mendefinisikan fungsi kustom SQL, fungsi agregat, dan kolaborasi. 4. Sangat Cepat SQLite sangat cepat jika berjalan pada lingkup yang sama sehingga tidak ada sumber daya tambahan seperti jaringan ketika menjalankan query maupun mengambil data. SQLite benar-benar fleksibel sehingga tidak membutuhkan protokol, serialisasi ataupun komunikasi melalui socket.SQLite juga bisa berjalan pada perangkat mobile, yang kini banyak dipakai di berbagai aplikasi Android.
5. Mode WAL Mode WAL pertama kali diperkenalkan pada SQLite 3.7.0.Fitur ini berguna untuk mengatasi kongkurensi dimana aktivitas membaca dan menulis data bisa dilakukan secara bersamaan. Tanpa mode WAL, akan sangat sulit jika banyak menggunakan proses yang berkaitan dengan database. Terdapat beberapa alasan mengapa SQLite sangat cocok untuk pengembangan aplikasi Android, yaitu: Database dengan konfigurasi nol. Artinya tidak ada konfigurasi database untuk para developer. Ini membuatnya relatif mudah digunakan. Tidak memiliki server. Tidak ada proses database SQLite yang berjalan. Pada dasarnya satu set libraries menyediakan fungsionalitas database. Single-file database. Ini membuat keamanan database secara langsung. Open source. Hal ini membuat developer mudah dalam pengembangan aplikasi.
Constructor public DatabaseHelper(Context context) { super(context, DB_NAME, null, DB_VERSION); } Opening and Closing Android SQLite Database Connection public DBManager open() throws SQLException { dbHelper = new DatabaseHelper(context); database = dbHelper.getWritableDatabase(); return this; } public void close() { dbHelper.close();
Inserting new Record into Android SQLite database table public void insert(String name, String desc) { ContentValues contentValue = new ContentValues(); contentValue.put(DatabaseHelper.SUBJECT, name); contentValue.put(DatabaseHelper.DESC, desc); database.insert(DatabaseHelper.TABLE_NAME, null, contentValue); } Updating Record in Android SQLite database table public int update(long _id, String name, String desc) { ContentValues contentValues = new ContentValues(); contentValues.put(DatabaseHelper.SUBJECT, name); contentValues.put(DatabaseHelper.DESC, desc); int i = database.update(DatabaseHelper.TABLE_NAME, contentValues, DatabaseHelper._ID + " = " + _id, null); return i; } Android SQLite – Deleting a Record public void delete(long _id) { database.delete(DatabaseHelper.TABLE_NAME, DatabaseHelper._ID + "=" + _id, null);
Selesai..~