key records tabel access

Status
Niet open voor verdere reacties.

Hannie2012

Gebruiker
Lid geworden
21 mrt 2018
Berichten
6
Beste allemaal,

Wij moeten voor school een database maken over het thuisbezorgingsproces bij Jumbo.
Nu lopen wij deels vast bij de relaties. :confused:
Wij vragen ons af of je in elke tabel de Key moet koppelen aan een andere. Dus of je aan elke Key een relatie moet verbinden?
Ik hoop dat onze vraag zo duidelijk is!:thumb:

Alvast bedankt
Groetjes
Hannie2012
 
Wij vragen ons af of je in elke tabel de Key moet koppelen aan een andere.
Op deze vraag geeft Johan m.i. het verkeerde antwoord; sleutelvelden aan sleutelvelden koppelen middels een relatie doe je alleen bij tabellen die een één-op-één relatie hebben. Dat zijn er doorgaans weinig (of geen) in een normale database. Dit type kom je alleen tegen bij bijvoorbeeld een personeelstabel en een extra personeelstabel, zoals een feestcommissie of sportdag. Daarbij zal één personeelslid dan één keer staan ingeschreven voor die extra activiteit.
Meestal koppel je een hoofdtabel aan een tabel met gerelateerde gegevenstabel. In het geval van een thuisbezorgingsproces heb je klanten (die uniek zijn) die boodschappen bestellen die thuis bezorgd worden. Als een klant meer dan één keer boodschappen mag laten bezorgen (lijkt mij wel zo handig) dan ligt er een één-op-veel relatie tussen Klanten en Bezorging. Mag een klant maar één keer iets laten bezorgen, dan maak je een één-op-één relatie. Je snapt wel dat dat laatste heel onhandig is.

Johan was een beetje kort door de bocht met 'hoeft niet'; als ik eerder had gereageerd had ik gezegd: absoluut doen! Relaties gebruik je namelijk om af te dwingen dat je geen foute gegevens mag invoeren. In het concept van Johan mag dat probleemloos; je kunt dan boodschappen bezorgen bij personen die niet in de klantentabel staan. En dat is uiterst onwenselijk. Van mij zou je dus leren dat je altijd de tabellen na het maken aan elkaar koppelt, om te voorkomen dat je straks met verkeerde records zit opgescheept. Dat is dan een probleem dat je alsnog moet oplossen, en waarna je dus alsnog de relaties moet zien te leggen. Voorkomen van ellende lijkt mij vele malen beter dan achteraf de rotzooi op te moeten ruimen!
 
Als je relationele integriteit vereist/wil afdwingen of een goed werkende database met geen kans op foutmeldingen wilt moet je inderdaad de correcte relaties leggen; zijn vraag was of het moet dan is het antwoord dat het niet moet ook correct; ik heb hier een aantal DB's draaien waar er totaal geen relaties in liggen en die werken ook naar behoren.
 
@Johan: pur technisch gesproken heb je wel gelijk, maar ik durf te wedden dat jij in jouw db’s wel degelijk (maar dan via formulieren en VBA) die integriteit bewaakt en afdwingt. Voor beginnende gebruikers is dat geen optie, die zou je dus duidelijk moeten maken dat relaties wel degelijk belangrijk en nuttig zijn. En dat miste ik in jouw antwoord.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan