Dalam kasus Anda, bidang-bidang ini alami kunci .
Kunci pengganti:
Kunci pengganti adalah kunci yang tidak memiliki arti "bisnis" dan hanya digunakan untuk mengidentifikasi catatan dalam tabel. Kunci-kunci tersebut dihasilkan dari basis data (contoh: Identity in SQL Server, Sequence in Oracle, Sequence / Identity di DB2 UDB dll.) Atau nilai-nilai sistem yang dihasilkan (seperti yang dihasilkan melalui tabel dalam skema).
Kunci Alami:
Kunci adalah alami jika atribut yang diwakilinya digunakan untuk identifikasi secara independen dari skema basis data. Apa artinya ini pada dasarnya adalah bahwa kuncinya adalah alami jika orang menggunakannya misalnya: Faktur-Angka, Pajak-Id, SSN dll.
Kunci pengganti vs Kunci Alami untuk Kunci Utama
Saya lebih suka menambahkan kunci pengganti untuk model bisnis dan manajemen basis data yang terpisah. Pertanyaan lain adalah menggunakan indeks clustered dan nonclustered pada kunci primer .. Jika tabel Anda berubah (tabel non statis, ia memiliki sisipan atau pembaruan intensif tinggi), Anda akan mendapatkan masalah dengan kinerja jika menggunakan indeks berkerumun pada kunci peningkatan non-monoton.