Tag Archives for data

Orphan Data dalam Basis Data

Jika kita bicara basis data secara mendalam, kita tidak bisa lepas dari pembicaraan tentang integritas referensial (referential integrity) yang “mengikat” data-data antartabel. Integritas referensial menjamin data-data yang di-refer (dirujuk) oleh data dari tabel lain tetap eksis, atau jika berubah (delete atau update) maka data yang me-refer mampu menyesuaikan.

Nah, apa yang terjadi jika basis data dengan data yang saling merujuk tersebut tidak menggunakan integritas referensial? Semisal kita memiliki tabel barang (tbarang), tabel penjualan (tpenjualan), dan tabel penjualan detail (tpenjualan_detail)
tbarang:
kd_barang *
nama_barang
merek

tpenjualan:
no_nota *
tgl_nota

tpenjualan_detail
no_nota *
kd_barang *
qty

Ket : *) primary key

Dari tabel dan entitasnya di atas, perhatikan tabel tpenjualan_detail yang merujuk data ke tabel tbarang melalui field kd_barang. Kedua tabel ini akan terhubung dengan relasi tbarang one-to-many tpenjualan_detail.
Jika tanpa integritas referensial, maka jika sebuah record dari tbarang yang menjadi rujukan dalam tpenjualan_detail dihapus, maka record dalam tpenjualan_detail tersebut akan menjadi orphan data, artinya data yang rujukannya sudah tidak eksis lagi. Dan dalam sistem basis data, data seperti ini sangat dihindari karena dampaknya akan sangat merugikan atau bahkan datanya tidak bisa digunakan lagi.

Barangkali ada yang mempunyai ide untuk menangkal orphan data ini di level aplikasi. Bisa, tetapi terbatas pada struktur basis data yang kompleks. Bayangkan bila tbarang di atas dirujuk oleh banyak sekali tabel, maka jika akan menghapus record harus melakukan pengecekan satu persatu. Berbeda kasusnya bila kita menggunakan fasilitas dalam integritas referensial yang mampu secara otomatis menghasilkan error ketika record yang menjadi rujukan berusaha dihapus.

Pembahasan singkat di atas mungkin bisa menjadi referensi bagus untuk mempertimbangkan penggunaan DBMS yang sudah menggunakan integritas referensial secara intensif. Contoh di antaranya adalah Microsoft Access dan Firebird.

Me At The Matrix


Seperti inilah yang tergambar dalam kepalaku ketika aku memandang dunia.
Hehehe…

Logis saja kalau kita menganggap bahwa dunia ini hanyalah lautan data. Kita merasa hidup karena tubuh kita memiliki sensor terhadap informasi dari luar tubuh, dan kita mampu merespon karena memiliki prosesor informasi, yakni otak.
Bukti tentang dunia sebagai lautan data adalah kenyataan bahwa kita bisa meretas aliran data yang masuk ke otak kita, dengan hipnotis misalnya. Data yang tak terolah dengan sempurna juga banyak ditemukan, misalnya dalam permainan ilusi mata.

Barangkali setelah menonton film The Matrix ada orang yang bertanya-tanya, jangan-jangan kita memang hidup dalam The Matrix. Yea, bisa jadi :D

SQL

SQL (Structured Query Language) merupakan bahasa implementasi dari basis data relasional hasil penelitian IBM. Bahasa SQL terdiri atas sekelompok fasilitas untuk mendefinisikan, memanipulasi, dan mengontrol data dalam basis data relasional.
Bab ini membatasi diri pada penggunaan SQL untuk memasukkan data dalam tabel, memanipulasi data yang ada dalam sebuah tabel maupun antartabel, mengupdate data, dan menghapus data.
Continue Reading »