Berikut
ini adalah jenis-jenis integritas data yang disertai dengan contoh kasusnya :
- Create Domain, yaitu membuat tipe data baru. Fungsi ini biasa digunakan untuk menangani data yang membutuhkan aturan bisnis sendiri,
- Contohnya : membuat tipe data “gender” untuk yang isinya hanya boleh berisi pria atau wanita ->
- Maka
sintaksnya dalam SQL adalah :
create domain gender char(2) constraint gender_domain check ( value in(‘pria’,'wanita’)); - Not NULL, yaitu menjaga agar suatu data tidak kosong dengan kata lain harus ada value-nya.
- Contohnya nama matakuliah pada tabel mata kuliah tidak boleh kosong.
- Maka sintaksnya dalam pl / sql :
- nama_matkul varchar2(15),
- constraint nn_ matkul not null (nama_matkul)
- Unique, yaitu membuat agar suatu data tidak memiliki nilai yang sama dengan record lainnya dalam tabel yang sama.
- Contohnya email pada tabel akun_facebook hanya boleh satu email untuk satu akun.
- Sintaksnya :
- email varchar2(15),
- constraint u_mail unique (email)
- Primary key, merupakan gabungan antara not null dan unique.
- Misalnya NIM pada tabel mahasiswa.
- nim char(7) not null,
- constraint pk_ nim primary key (nim)
- Check, memeriksa data dengan aturan bisnisinya sendiri tanpa membuat tipe data baru.
- Contohnya sebelum memasukkan nilai ujian pada tabel nilai, data diperiksa terlebih dahulu. Data tidak boleh masuk jika bernilai negatif.
- nilai number,
- constraint chk_nilai check (nilai > 0)
- Referential Integrity, adalah integritas pada relasi antar tabel. Contohnya jika kolom NIM mahasiswa pada tabel nilai mengacu ke kolom NIM pada tabel mahasiswa, dan terjadi perubahan (delete atau update) pada NIM di tabel mahasiswa, maka ada beberapa pilihan yang dapat dilakukan terhadap NIM yang di tabel nilai, diantaranya adalah :
- Delete cascade, hapus record pada kedua tabel yang bersangkutan
- Delete set null, hapus record di tabel asal dan value record pada tabel yang mengacu di jadikan NULL
- Update cascade, perbarui isi record pada kedua tabel
- nim char(7),
- constraint fk_nim foreign key (nim) references mahasiswa (nim) on delete cascade / on delete set null / on update cascade
Tidak ada komentar:
Posting Komentar