Living life and Make it Better

life, learn, contribute

Endy Muhardin

Software Developer berdomisili di Jabodetabek, berkutat di lingkungan open source, terutama Java dan Linux.

Mencari Relasi Foreign Key ke Tabel MySQL

Di aplikasi yang kita buat, biasanya ada fitur untuk menghapus data atau record tertentu. Bila kita menggunakan database relasional yang memiliki fitur referential integrity, kita akan dicegah bila data yang ingin kita hapus memiliki relasi ke data lain.

Contohnya, kita punya tabel Produk, yang kolom idnya digunakan sebagai foreign key oleh tabel Penjualan. Dengan demikian, pada waktu ingin menghapus data Produk, terlebih dulu kita cek ke tabel Penjualan, apakah ada data transaksi yang berelasi ke Produk yang ingin kita hapus.

Akan menjadi masalah bila aplikasi kita sudah besar, tabelnya ada ratusan. Bagaimana cara kita mencari tabel mana saja yang memiliki relasi ke tabel Produk? Tentunya tidak mungkin dicek satu-persatu.

Dengan bantuan paman Google, berikut adalah cara mendapatkannya untuk database MySQL.

Lanjut membaca ...


Mematikan Location Service di Facebook Android

Jaman sekarang, berbagai layanan internet semakin ingin tahu saja di mana kita sedang berada. Memang ada layanan yang dikhususkan untuk mempublikasikan lokasi kita, seperti misalnya Foursquare atau Google Latitude. Tapi untuk kedua layanan tersebut, kita sendiri yang secara sukarela mempublikasikan lokasi kita.

Banyak aplikasi social lain yang sering kita gunakan, dan berusaha untuk mengetahui posisi kita setiap saat. Tidak terkecuali aplikasi sejuta umat, yaitu Facebook. Setiap kali kita chat atau posting sesuatu, Facebook langsung memasang lokasi kita di posting atau pesan yang kita taruh di Facebook.

Nah, pada artikel ini, kita akan membahas cara mematikan fitur tersebut pada aplikasi Facebook yang berjalan di Android.

Lanjut membaca ...


Memahami Dependency Injection

Spring Framework merupakan framework yang sangat populer dan banyak digunakan orang di seluruh dunia. Jargon utama yang sering kita dengar bersamaan dengan Spring Framework adalah prinsip Dependency Injection. Ini adalah teknik pemrograman yang digadang-gadang mampu merapikan aplikasi yang kita buat sehingga mudah dipahami dan dikelola.

Tapi apakah yang dimaksud dengan Dependency Injection atau Inversion of Control itu?

Lanjut membaca ...


Membuat Changelog Liquibase

Di ArtiVisi, kami menggunakan tools bernama Liquibase untuk mendefinisikan skema database. Dengan Liquibase ini, skema database dapat disimpan dan dikelola versinya dalam Git. Dia juga memiliki fitur untuk melakukan migrasi database pada saat aplikasi kita naik versi. Bila terjadi error di versi baru, Liquibase juga bisa melakukan rollback agar skema database kita kembali ke kondisi sebelum naik versi.

Skema database dalam Liquibase ditulis dalam format XML, disebut dengan istilah changelog. Untuk project baru, ini bisa ditulis tangan secara manual, tetapi untuk aplikasi yang sudah ada, terlalu merepotkan kalau semua tabel yang sudah ada harus ditulis ulang skemanya.

Lanjut membaca ...


Membuat Audit Log

Dalam membuat aplikasi bisnis, kita sering diminta membuat audit log.

Apa itu audit log?

Audit log adalah catatan mengenai perubahan data dalam aplikasi. Yang dicatat biasanya :

  • kolom mana yang berubah
  • siapa yang mengubah
  • diubah dari apa menjadi apa
  • kapan dia berubah

Lanjut membaca ...