menentukan primary key yg benar harus memperhatikan syarat primary key yang telah disampaikan pada awal slide.
Untuk kasus KRS, kita tau bahwa rule bisnis yang berlaku adalah satu semester mahasiswa hanya bisa mengisi 1 KRS maka key KRS menjadi NPM + Semester, Jika kita menggunakan NPM maka kita akan mendapatkan banyak KRS dan itu artinya NPM tidak unik untuk KRS, begitu pula jika kita gunakan semester kita juga akan mendapatkan banyak KRS karena pada semester yang sama ada banyak mahasiswa yang mengisi KRS dan itu artinya semester tidak unik untuk KRS. Sedangkan jika kita gunakan NPM + Semester maka kita hanya akan mendapatkan sebuah KRS saja yang sesuai NPM dan semesternya.
Jika rule bisnis diubah seperti yang anda tanyakan dimana seorang mahasiswa bisa mengisi 2 KRS dalam satu semester itu artinya NPM+Semester tidak lagi unik karena akan mendapatkan lebih dari satu KRS, sehingga kita perlu menambahkan atribut lain untuk membuatnya menjadi unik, misal kita tambahkan tipe semester (R=semester reguler dan P=semester pendek) maka NPM+Semester+TipeSemester menjadi unik untuk KRS tersebut (contoh 01163901+8+R untuk KRS mahasiswa dengan NPM 01163901 pada semester 8 reguler dan 01163901+8+P untuk KRS mahasiswa dengan NPM 01163901 pada semester pendek di semester 8)