Hukum Codd
Hukum cood adalah suatu ketentuan atau aturan dan definisi standar dari sebuah sistem basis data relasional, yang diperkenalkan oleh Edgar F. Codd. Hukum Codd terdiri dari dua belas kriteria atau ketentuan yaitu :
1. Hukum 0: Suatu sistem harus memenuhi kualifikasi sebagai relasional, sebagai basisdata, dan sebagai sebuah sistem manajemen:
2. Hukum 1: Hukum informasi: Seluruh informasi yang terdapat dalam basisdata harus bisa direpresentasikan hanya dalam satu cara, yaitu dalam bentuk nilai-nilai yang terisi dalam bentuk tabular baris dan kolom.
3. Hukum 2: Hukum Jaminan akses:Seluruh data harus bisa diakses tanpa ada kerancuan (ambiguity). Hukum ini merupakan penegasan dari kebutuhan mendasar atas sebuah kunci primer. Hukum tersebut menjelaskan bahwa setiap nilai skalar dalam basisdata haruslah memiliki alamat secara logikal dengan cara menspesifikasikan nama dari tabel, nama dari kolom, dan nilai kunci primer dari baris data dalam tabel tersebut.
4. Hukum 3: Perlakuan sistematik terhadi nilai NULL:Sebuah sistem manajemen basisdata harus mengijinkan setiap field terisi dengan nilai NULL (kosong). Sistem harus mendukung representasi dari "Hilangnya informasi dan Ketidakbergunaan informasi" secara sistematis, membedakan secara jelas dari nilai-nilai yang lain (contoh: "perbedaan antara nol dengan nilai-nilai numerik lain," dalam kasus nilai-nilai numerik), dan tipe data yang bersifat independen. Termasuk pula representasi tersebut harus dapat dimanipulasi oleh DBMS melalui langkah-langkah yang sistematis.
5. Hukum 4: Katalog online yang aktif haruslah berbasis model relasional: Sistem harus mendukung sebuah katalog relasional yang bersifat online, inline yang bisa diakses untuk pengguna yang sah dalam arti melalui bahasa kueri reguler. Lebih jelas lagi, pengguna harus dapat mengakses struktur data tersebut (katalog) dengan cara yang sama menggunakan bahasa kueri yang digunakan pula untuk mengakses data.
6. Hukum 5: Hukum sub-bahasa data yang komprehensif: Sistem harus mendukung setidaknya satu bahasa relasional yang
a. Memiliki sintaksis linear
b. Dapat digunakan secara interaktif maupun melalui program aplikasi
c. Mendukung operasi pendefinisian data (termasuk pendefinisan view), operasi manipulasi data, aspek kemanan dan pembatasan integritas, operasi-operasi manajemen transaksi (begin, commit, dan rollback).
7. Hukum 6: Hukum pembaruan/update view:Semua view yang secara teoritis dapat diupdate dalam implementasinya juga harus dapat diupdate oleh sistem.
8. Hukum 7: Level tingkat tinggi dalam operasi insert, update, dan delete: Sistem harus mendukung serangkaian operasi-operasi insert, update, and delete dalam satu masa waktu yang sama.
9. Hukum 8: Data secara fisik bersifat independen: Perubahan pada level fisik (bagaimana suatu data disimpan, menggunakan larik ataupun senarai berantai dsb.) harus tidak mengakibatkan perubahan pada struktur di sisi aplikasi pada level yang lebih tinggi.
10. Hukum 9: Data secara logikal bersifat independen: Perubahan pada level logikal (Tabel, kolom, baris) harus tidak mengakibatkan perubahan pada level struktur di sisi aplikasi pada level ang lebih tinggi. Hukum ini secara relatif lebih suli dicapai daripada hukum 8.
11. Hukum 10: Integritas data bersifat independen: Integritas data harus dispesifikasikan secara terpisah dari program aplikasi dan disimpan dalam katalog/struktur dan harus memungkinkan untuk melakukan perubahan terhadap struktur tersebut ketika dibutuhkan tanpa memengaruhi aplikasi yang telah ada.
12. Hukum 11: Distribusi yang bersifat independen: Distribusi atas sebagian dari basisdata ke berbagai lokasi harus dapat diatur sedemikian rupa sehingga tidak terlihat oleh pengguna dari basisdata tersebut. Begitu pula aplikasi-aplikasi yang ada harus tetap dapat beroperasi secara normal seperti biasanya ketika:
a. saat versi dari DBMS yang terdistribusi pertamakali diperkenalkan; dan/ataupun
b. ketika data-data yang terdistribusi tersebut diredistribusikan ke seluruh sistem.
13. Hukum 12: Hukum nonsubversion: Jika sebuah sistem menyediakan antarmuka tingkat rendah, maka antarmuka tersebut tidak dapat digunakan untuk menggagalkan sistem, sebagai contoh, membypass aturan-aturan yang terkait dengan keamanan data, ataupun integritasnya.
0 komentar:
Post a Comment