Pentingnya Integrity Constraint Dalam Struktur Database

Posted On // 2 comments
Sebetulnya ini adalah copy-paste hasil diskusi group PHP Indonesia di Facebook, yang sengaja saya pajang di sini karena mungkin berguna (buat saya) sekali buat menambah pemahaman mengenai Integrity Constraint.



SEBERAPA PENTING nya
- INTEGRITY CONSTRAINT didalam struktur database.
- Kapan kita menggunakan Integrity Constraint ?
- Property Description pada sebuah Field atau Table.
Pertanyaan ini diajukan oleh Komar Satriani


Dan berikut adalah tanggapan dari Pak Dedi Widharwanto

Kalo menurut pak Kent Milligan (ini mbahnya DB2 on IBM i) salah satu pentingnya menggunakan integrity constraint adalah ketika database yang kita bangun diakses oleh lebih dari satu aplikasi dan mungkin juga cara aksesnya berbeda-beda (akses langsung, JDBC, ODBC atau cara lain).

Jika tidak menggunakan integrity constraint semua logic ada di aplikasi... artinya jika aplikasinya ada 10 maka semua aplikasi tersebut harus memiliki business logic yang tepat. Dengan menggunakan constraint di DB maka kita tidak perlu lagi memikirkan logic tersebut di masing2x aplikasi karena DBnya udah mengatur sendiri.

Ini sebagian tulisan dia:
Many AS/400 databases were designed to be updated by a single set of application programs. For such databases, the application performed all integrity checks (e.g., Is a state abbreviation valid?). As systems evolve, however, databases are being accessed through many new mechanisms: ODBC, Java programs, Web pages, and more. Thus, it's important to migrate as many RPG integrity checks as possible into the database itself via constraints and referential integrity. Note that in cases where multiple applications can update the same data, all the applications must explicitly enforce integrity checks - a high-maintenance, error-prone approach that still may not cover all interfaces.

Kalo mau lihat ulasan yg lengkap ada di sini
http://www-03.ibm.com/systems/i/software/db2/todba.html

Mas Komar Satriani, sebenarnya secara umum IC bisa membantu semua programmer membuat aplikasi karena untuk beberapa urusan yang bisa ditangani IC tidak perlu dimasukan lagi ke dalam aplikasi/programnya. Sehingga aplikasinya lebih ringkas dan umumnya berdampak ke performance juga.

Jadi sebenarnya bukan penting atau tidak... tapi jika kita bisa membuat aplikasi yg ringkas dengan performance yg baik maka aplikasi tersebut pasti akan disukai oleh penggunanya...

Pengalaman saya berurusan di dunia perbankan adalah setiap 3-5 tahun sekali sebagian besar customer saya ganti sistem hanya untuk meningkatkan performance sistem dan aplikasinya... ini cara yg paling mudah dilakukan dibandingkan cara yg kedua di bawah ini...

cara lain yg lebih sulit... melihat/membongkar cara aplikasinya bekerja dan merubah logic programming... (hehehe... kalo yg buat aplikasi masih ada.. dan masih inget kenapa dia membuat logic seperti itu ketika dia buat aplikasinya..)

Aplikasi di perbankan (terutama yg kritikal) memang tidak di harapkan sering fail... karena dampaknya kemana mana sih...

klik disini Untuk melihat diskusi lengkapnya,

2 komentar:

yohanaputra mengatakan...

Mendingan Di rekap semua om, jadikan 1 artikel . Tapi lebih bagus kalo disertakan contoh kasus dalam pembuatannya... ^_^

Taufik Lukman mengatakan...

Sip Om. nanti di kompilasi biar lebih enak dibaca ;)