Integritas Referensial Dalam Suatu Database - Integritas referensial terjadi di foreign key. Foreign key membuat sebuah hubungan antara sebuah kolom di sebuah tabel dan primary atau unique key di tabel lain.
Di buku lain, Database System karangan Conn-Begg, menyatakan bahwa foreign key adalah sebuah atribut, atau sesusunan atribut-atribut, di dalam satu relasi yang cocok dengan candidate key dari beberapa ( mungkin juga sama ) relasi.
Contoh:
Terdapat dua buah relasi ( table ) dengan nama sebagai berikut:
Di kedua tabel di atas terdapat penyertaan branchNo yang memang ditambahkan secara sengaja, dan menghubungkan tiap branch dengan detail dari staff yang bekerja di branch tersebut.
Di table Branch, branchNo adalah primary key, sedangkan di table Staff, branchNo adalah foreign key, dan juga sebagai atribut yang mencocokkan antara staff ke kantor cabang ( branch ) mereka bekerja.
Atribut branchNo di relasi Staff adalah target atribut primary key branchNo di relasi Branch. Atau bisa dibilang branchNo di table Staff adalah atribut/kolom yang direferensikan, sedangkan table Staff adalah table yang direferensikan. Atribut branchNo di table Branch adalah atribut/kolom referensi, sedangkan table Branch adalah table referensi. Atribut-atribut tersebut akan memainkan peran yang penting dalam penampilan manipulasi data.
Di Oracle terdapat beberapa peraturan ketika menggunakan foreign key, yaitu:
Untuk membuat sebuah foreign key di dalam table oracle terdapat dua cara:
Untuk menambahkan Foreign Key kedalam sebuah table yang telah dibuat adalah sebagai berikut:
image source: projectpeach.co.uk |
Contoh:
Terdapat dua buah relasi ( table ) dengan nama sebagai berikut:
Branch |
---|
branchNo* |
street |
city |
postCode |
Staff |
---|
staffNo* |
fName |
lName |
position |
sex |
DOB |
salary |
branchNo |
Di table Branch, branchNo adalah primary key, sedangkan di table Staff, branchNo adalah foreign key, dan juga sebagai atribut yang mencocokkan antara staff ke kantor cabang ( branch ) mereka bekerja.
Atribut branchNo di relasi Staff adalah target atribut primary key branchNo di relasi Branch. Atau bisa dibilang branchNo di table Staff adalah atribut/kolom yang direferensikan, sedangkan table Staff adalah table yang direferensikan. Atribut branchNo di table Branch adalah atribut/kolom referensi, sedangkan table Branch adalah table referensi. Atribut-atribut tersebut akan memainkan peran yang penting dalam penampilan manipulasi data.
Di Oracle terdapat beberapa peraturan ketika menggunakan foreign key, yaitu:
- Disallow Delete – Blok menghapus baris dari tabel yang direferensikan ketika ada baris yang tergantung di tabel ini.
- Cascade Delete – Hapus baris yang tergantung dari tabel ini ketika baris tabel induk yang terkorespondesi dihapus.
- Set to Null on Delete – Menjadikan nilai kolom foreign key menjadi null ketika baris tabel induk yang terkorespondensi dihapus.
Untuk membuat sebuah foreign key di dalam table oracle terdapat dua cara:
- Pada saat pembuatan table pertama kali
- Setelah table selesai dibuat, kemudian foreign key baru ditambahkan.
Untuk menambahkan Foreign Key kedalam sebuah table yang telah dibuat adalah sebagai berikut:
- Login ke dalam Database Home Page.
- Pada Database Home Page, klik icon Object Browser.
- Di dalam Object Browser, pilih table yang akan ditambahkan foreign key.
- Klik tab Constraints
- Klik tombol Create
- Pada halaman Add Constraint, pilih Foreign Key untuk tipe constraint. Kemudian isi informasi yang muncul:
- Constraint Name : nama_constraint
- Foreign Key Column : kolom_yang_akan_menjadi_foreign_key
- Reference Table Name : nama_table_referensi
- Reference Table Column List : nama_kolom_referensi
- Untuk Preserve Case tidak perlu dicek. - Tekan tombol Next
- Klik tombol Finish untuk menyelesaikan pembuatan foreign key.
Sekian artikel tentang Integritas Referensial Dalam Suatu Database.
Integritas Referensial Dalam Suatu Database
4/
5
Oleh
Unknown