Geloof me, je maakt het jezelf een stuk simpeler als je elke tabel zijn eigen primary key geeft. Op de andere manier loop je vast, al was het alleen maar omdat je steeds discussie hebt over wat nou uniek is en wat niet.
Neem een factuur regel. Moet deze een eigen key hebben? Nee, eigenlijk niet want een factuur is altijd van een klant, dus "hoor" je de klant in de sleutel op te nemen. Bij een factuurregel worden dat dus al 3 velden om de juiste regel te vinden. Ergens komt er een moment dat je je database in moet omdat er iets vreselijk mis is gegaan. In plaats van te zoeken naar de factuurregel met ID 12345 moet je dan dus steeds gaan zoeken naar de factuurregel met klant nummer 2009123, factuurnummer 2009987 en regelnummer 4.
Ik zou het wel weten
Overigens... datzelfde probleem heb je ook bij GUIDs en dat is dan ook mijn (enige?) bezwaar tegen het gebruik van GUIDs als sleutel: het is zeer slecht datatracen.
Bookmarks