Di dalam database juga keberadaan key sangat penting. Karena key berfungsi sebagai identitas di dalam sebuah tuple. Key jugalah yang menciptakan hubungan di setiap relasi agar data-data dapat terhubung satu sama lain di dalam database.
Mungkin kalian familiar dengan primary key (PK) dan foreign key (FK), karena di tabel ERD pasti terdapat kedua key ini. Namun dibalikitu semua terdapat key lainnya yang kalian juga perlu ketahui, seperti superkey, candidate key, dan sebagainya.
Untuk memahami jenis-jenis key, berikut adalah contoh potongan ERD dalam sebuah universitas
Jenis-jenis Key
Ada beberapa jenis key di dalam database yang perlu kalian ketahui , yaitu:
Mungkin kalian familiar dengan primary key (PK) dan foreign key (FK), karena di tabel ERD pasti terdapat kedua key ini. Namun dibalikitu semua terdapat key lainnya yang kalian juga perlu ketahui, seperti superkey, candidate key, dan sebagainya.
Untuk memahami jenis-jenis key, berikut adalah contoh potongan ERD dalam sebuah universitas
Jenis-jenis Key
Ada beberapa jenis key di dalam database yang perlu kalian ketahui , yaitu:
- Candidate Key
- Attribute yang unik dan tidak bisa dipecah lagi dan berpotensi menjadi primary key
- Contoh di dalam tabel mahasiswa pada database universitas. Terdapat dua data yang unik, yaitu NIK dan NIM
- Primary Key (PK)
- Candidate key paling minimal yang dapat mengidentifikasi sebuah tuple secara unik
- Candidate key yang dipilih adalah data yang bisa mendefinisikan sebuah tuple secara unik dalam jangka waktu yang panjang dan disesuaikan dengan perusahaannya
- Contohnya pada kasus di atas, universitas akan lebih memilih NIM dibandingkan NIK karena lebih sesuai dan datanya lebih teratur (berurut)
- Superkey
- Candidate key dengan atribut yang tidak minimal
- Sekumpulan attribute yang dapat mendeskripsikan sebuah tuple secara unik
- Biasa terdapat dalam database yang sangat besar
- Alternate Key
- Candidate key yang tidak dipilih menjadi primary key
- Contohnya pada kasus di atas, NIK tidak terpilih menjadi primary key, sehingga NIK menjadi alternate key
- Composite Key
- Sebutan lain untuk primary key yang memiliki lebih dari dua atribut
- Contohnya terdapat dalam tabel Pembayaran yang memiliki 2 primary key, yaitu tglPembayaran dan NIM, dengan asumsi satu mahasiswa hanya bisa melakukan pembayaran satu kali dalam satu hari
- Foreign Key (FK)
- Key yang merupakan primary key dari tabel lain, sehingga dapat menghubungkan satu tabel dengan tabel yang lainnya.
- Di dalam foreign key terdapat keistimewaan, yaitu dia bisa menentukan hubungannya dengan tabel lain mau seperti apa. Keistimewaan ini disebut Referential Integrity, yang akan saya jelaskan di bawah
- Contohnya pada tabel Mahasiswa, terdapat foreign key kodeMatkul yang menunjuk ke tabel MataKuliah, sehingga kedua tabel ini saling terhubung
Referential Integrity
Referential Integrity yang terdapat di foreign key ada 4, yaitu:- Cascade
- Apabila dilakukan update/delete pada tabel induk, maka pada tabel yang memiliki relasi dengan tabel tersebut akan ikut ter-update/delete
- Restrict
- Data pada tabel induk tidak bisa di update/delete jika data tersebut memiliki relasi dengan tabel lainnya
- Set null
- Apabila dilakukan update/delete pada tabel induk, maka pada tabel yang memiliki relasi dengan tabel tersebut akan menjadi NULL
- No action
- Apabila dilakukan update/delete pada tabel induk, maka pada tabel yang memiliki relasi dengan tabel tersebut tidak mengalami efek apa-apa

Comments
Post a Comment