Integritas Data
Integritas Data Dalam Basis Data
Integritas data dalam pengertiannya yang luas mengacu pada kepercayaan dari sumber daya suatu sistem. Secara lebih analitik, integritas adalah “kesetiaan representasional informasi untuk keadaan sebenarnya dari objek yang mewakili informasi, dimana kesetiaan itu sendiri terdiri dari empat atribut inti yaitu: kelengkapan, ketepatan waktu, akurasi / kebenaran, dan validitas”. Konsep ini sendiri sudah banyak digunakan.
Integritas data sangat penting didalam operasi database tertentu dan umumnya pada data pergudangan dan bisnis intelijens. Karena integritas data dapat memastikan keakuratan, konsistensi, aksesibilitasi, dan kualitas tinggi dari sebuah data, sehingga sangat penting untuk mengikuti aturan pengintegritasan suatu data.
Data yang memiliki integritas identik dipertahankan selama operasi apapun (seperti bisnis transfer, penyimpanan, atau pengambilan). secara sederhana dalam istilah bisnis, integritas data adalah jaminan bahwa data konsisten, bersertifikat dan dapat dirujukkan.
Contoh: contoh dari mekanisme integritas data adalah hubungan orangtua dan anak dengan record terkait. Jika dalam catatan orangtua memiliki satu atau lebih dari catatan anak terkait semua proses integritas referensial akan ditangani oleh database itu sendiri, yang secara otomatis menjamin keakuratan dan integritas data sehingga tidak ada catatan anak bisa ada tanpa orang tua (atau disebut juga yatim piatu) dan bahwa tidak ada orangtua kehilangan catatan anak mereka. Ini juga menjamin bahwa tidak ada catatan induk dapat dihapus sementara orangtua memiliki record setiap anak. Semua ini ditangani pada tingkat database dan tidak memerlukan coding cek integritas ke dalam setiap aplikasi.
Ada beberapa cara dan tujuan dalam menjaga integritas data, diantaranya :
1. Memasukkan aturan bisnis di dalam database
2. Menjaga agar data yang tidak valid tidak masuk ke database
3. Menjaga konsistensi data pada relasi keterkaitan antar tabel
Mengapa harus menangani integritas data pada level database programming ? Karena :
Menangani integritas data pada level database lebih murah dan mudah dibandingkan dengan menanganinya di level aplikasi
Bugs akibat data yang tidak valid pada database tidak mudah ditemukan dan dapat muncul di kemudian hari
Ketahanan database akan lebih kuat untuk jangka panjang jika ditangani dengan benar
Jenis-Jenis Integritas Data dapat dikelompokkan sebagai berikut :
Entity Integritas
Domain Integritas
Refrential Integritas
User Defined Integritas
1. Entity Integritas
Entity Integritas mendefinisikan sebuah baris sebagai sebuah entitas yang unik untuk suatu tabel. Entity integritas memaksa integritas dari column atau primary key dari suatu tabel (melalui index, unique, constraints, primary key). Primary key tidak boleh null.
2. Domain Integritas
Domain Integritas merupakan validasi dari masukan untuk sebuah kolom. Anda dapat memaksa domain integritas dengan membatasi tipe (melalui data types), format (melalui check constraints dan rules), atau range nilai-nilai yang mungkin (melalui Foreign Key Constraints, Check Constraints, Default Definitions dan rules).
3. Refrential Integritas
Refrential Integritas memastikan bahwa seluruh nilai dari foreign key cocok dengan nilai primary key yang dihubungkan.
4. User Defined Integritas
User–defined integritas mengizinkan Anda untuk menentukan spesific business rules sendiri yang tidak sama pada kategori integrity yang lain.
Types of Data Integrity
Bagian ini menggambarkan atauran yang dapaat diterapkan pada kolom tabel ayang menekankan perbedaan tipe data pada integritas data.
1. Null Rule
Aturan null adalah definisi aturan pada single column yang membolehkan atau tidak membolehkan inserts atau updates untuk pengisian rows kosong (the absence of a value) pada kolom ini.
2. Unique Column Values
Aturan nilai unique didefinisan pada sebuah column (or set of columns) yang membolehkan insert or update hanya pada row jika itu berisi sebuah nilai unique dalam sebuah kolom (or set of columns).
3. Primary Key Values
Aturan nilai primary key didefinisikan pada sebuah key (a column or set of columns) tertentu bahwasetiap each row dalam table dapat mengidentifikasi keunikan dengan nilai kunci tersebut
4. Referential Integrity Rules
Aturan referential integrity adalah definsi aturan pada sebuah kunci key (a column or set of columns) dalam sebuah table yang menjamin bahwa data dalam kunci cocok dengan nilai dalam sebuah relasi table (the referenced value).
Aturan-Aturan Referential Integrity
Referential integrity mengacu pada kaitan antar row/record dari 2 tabel yang berhubungan melalui Foreign Key yang bersangkutan.
Pada insert, record harus dimasukkan di tabel utama dahulu, kemudian baru di tabel kedua.
Pada delete, record harus dihapus di tabel kedua dahulu, kemudian baru di tabel utama.
Field yang dihubungkan dari tabel utama haruslah berupa Primary Key.
Kedua field yang saling behubungkan harus memiliki Tipe data dan lebar data yang sama.
Tidak dibenarkan penghapusan record pada tabel utama yang telah dihubungkan dengan tabel yang direlasikan.
Macam action dalam Referential Integrity:
NO ACTION atau RESTRICT : update atau delete tidak dilakukan. Ini merupakan pilihan default.
CASCADE : nilai kolom di tabel kedua disesuaikan dengan nilai kolom di tabel utama
SET NULL : nilai kolom di tabel kedua dijadikan NULL
SET DEFAULT : nilai kolom di tabel kedua dijadikan nilai DEFAULT (nilai DEFAULT harus ditentukan pada waktu pembuatan tabel).
Membuat Constraint
Constraint merupakan suatu aturan yang membatasi jenis data yang diijinkan untuk dimasukkan ke dalam tabel. Constraint dapat dibuat baik pada saat pembuatan tabel atau setelah tabel dibuat. Ketika constraint dibuat setelah pembuatan tabel, maka constraint tersebut hanya mengecek data yang ada (yang telah dimasukkan dalam tabel). Jika ada beberapa pelanggaran maka constraint akan ditolak.
Constraint Classification (Tipe-tipe Constraint) :
· PRIMARY KEY Constraint
Berguna untuk menspesifikasikan kolom dalam tabel. Tidak boleh kosong dan harus unik, untuk menghubungkan satu tabel dengan tabel lain.
· FOREIGN KEY Constraint
Digunakan untuk menspesifikasikan kolom foreign key pada suatu tabel. Foreign Key digunakan untuk menghubungkan dua tabel. Kolom foreign key adalah kolom atau kombinasi beberapa kolom dalam suatu tabel yang selalu merujuk pada kolom primary key pada suatu tabel.
· UNIQUE Constraint
Digunakan untuk menjamin bahwa data pada suatu kolom atau beberapa kolom tidak diijinkan sama.
· CHECK Constraint
Digunakan untuk membatasi suatu nilai pada kolom dengan nilai tertentu yang diijinkan masuk.
· DEFAULT Constraint
Merupakan atribut opsional yang digunakan untuk memberikan suatu nilai tertentu pada suatu kolom jika kolom tersebut tidak dimasukkan suatu data.
· NOT NULL
Digunakan untuk menjamin tidak ada nilai null (kosong) yang muncul pada suatu kolom tertentu sehingga bila tidak mengisikan nilai pada kolom tersebut maka akan muncul error.
Key
Kunci (key) adalah kolom/atribut atau kombinasi kolom/atribut yang dapat digunakan untuk mengidentifikasi baris dalam tabel (entitas) secara unik.
Macam – macam kunci pada pada Basis data
Tabel 1
Tabel MHS
NIMNamaAlamatA11.2011.01234Wahyu SaputraSemarangA11.2012.07654May ArifinBrebesA11.2010.02310Tina LilianaPati
Tabel 2
Tabel MKUL
KDMKMaKulSKSA11.2034Metodologi Penelitian3A11.4045Basis Data3A11.3067Sistem Basis Data3
Tabel 3
Tabel NILAI
NIMKDMKUTSUASA11.2011.01234A11.20346075A11.2012.07654A11.30677070A11.2010.02310A11.40457580
v Super Key
Sebuah atau sekumpulan atribut yang secara unik mengidentifikasi sebuah tupel dalam tabel relasi. Berdasarkan contoh tabel MHS sebelumnya, super key yang mungkin adalah (NIM), (NIM, Nama), (NIM, Alamat), (Nama, Alamat), dan (NIM, Nama, Alamat).
v Candidate Key
Super key yang himpunan bagian yang sebenarnya tidak ada yang menjadi super key juga. Berdasarkan contoh super key sebelumnya, candidate key yang mungkin adalah (NIM) dan (Nama, Alamat). Atribut Nama dan Alamat dapat dijadikan candidate key jika kombinasi keduanya bisa menjadi pengidentifikasi yang unik untuk sebuah tabel relasi.
v Primary Key
Candidate key yang dipilih sebagai pengidentifikasi unik untuk sebuah tabel relasi. Berdasarkan contoh candidate key sebelumnya, primary key yang dipilih adalah (NIM), karena nilai NIM sangat unik dan tidak ada 2 mahasiswa yang memiliki NIM yang sama.
v Alternate Key
Candidate key yang tidak dipilih sebagai primary key. Berdasarkan contoh candidate key sebelumnya, alternate key adalah (Nama, Alamat).
v Composite key
Composite key merupakan gabungan dua key atau lebih yang secara unik dapat menidentiifikasi sebuah tupel. Contoh composite key adalah KDMK .
v Foreign Key
Foreign Key merupakan atribut yang merupakan key pada relasi lain. – macam kunci pada pada Basis data
Tidak ada komentar:
Posting Komentar