Naar de homepage
Homepage Artikelen Contact
Je bevindt je in : Artikelen > Software

Cursus database ontwerpen

Gegevens koppelen

In de klanttabel slaan we klantgegevens op, maar we moeten voor het klantcontactsysteem ook contactmomenten opslaan. Een contactmoment ontstaat wanneer een klant belt, e-mailt of een brief schrijft.

Je zou misschien bedenken om de datum en een beschrijving van het contactmoment in de klanttabel op te slaan bij de juiste klant. Dat kan echter niet. Het klantnummer moet uniek zijn in de klantnummerkolom. Er mag dus altijd maar 1 rij per klant zijn in de klanttabel. Je zou nog alle contactmomenten in 1 cel kunnen opslaan op dezelfde rij als de klantgegevens (als een soort flat file in 1 cel), maar dat is absoluut niet wenselijk, omdat het dan heel moeilijk wordt om door de contactmomenten te zoeken. (Nb. later in deze cursus databases worden de regels voor goed database-ontwerp op een rij gezet).

Conclusie: we moeten een nieuwe tabel maken voor contactmomenten. Eerst bepalen we wat we allemaal van een contactmoment willen opslaan.

  • contactmoment_id (primaire sleutel)
  • klantnummer (zodat het contactmoment aan één klant gekoppeld is)
  • Datum en tijd
  • Een beschrijving van het contactmoment (Inhoud telefoongesprek, inhoud e-mail, inhoud brief, etc)
  • Nam het bedrijf contact op met de klant of andersom?: inkomend_uitgaand
  • Communicatietype (telefoon, e-mail, fax): com_type

Hieronder staat een conceptversie van de contactmomententabel. Later in deze cursus database ontwerpen bekijken we onderstaande tabel nog eens kritisch aan de hand van de ontwerpregels voor relationele databases.

Cursus Database Ontwerpen - Tabel contactmomenten

Op elke rij van de contactmomententabel staat informatie over een uniek contactmoment. Elk contactmoment is uniek identificeerbaar doorde primaire sleutel, het contactmoment_id (eerste kolom). Bovendien is elk contactmoment gekoppeld aan een klant uit de klanttabel door middel van het klantnummer in de tweede kolom.

Met behulp van het klantnummer kunnen bij elke klant in de klanttabel de contactmomenten opgezocht worden en andersom bij elk contactmoment de betreffende klant uit de klanttabel. Er is hier sprake van een '1 op veel' relatie tussen de klant en zijn of haar contactmomenten.

Nu je een voorbeeld gezien hebt van een database is het tijd om in te gaan op de relaties die kunnen bestaan tussen tabellen. Het voorbeeld van de klanttabel en de contactmomententabel is een 'één op veel relatie'. Voor elke klant (1) kunnen meerdere (veel) contactmomenten opgeslagen zijn. Bij het ontwerpen van relationele databases onderscheiden we 3 soorten relaties tussen tabellen.

  • De één op veel relatie
  • De veel op veel relatie
  • De één op één relatie

  1. 1  
  2. 2  
  3. 3  
  4. 4  
  5. 5  
  6. 6 
  7. 7  
  8. 8  
  9. 9  
  10. 10  
  11. 11  
  12. 12  
  13. 13  
  14. 14  
  15. 15  
  16. 16  

Cursus database ontwerpen
  1. 1Introductie
  2. 2Databasegeschiedenis
  3. 3Voordelen en mogelijkheden van relationele databases
  4. 4Klantcontactsysteem
  5. 5Tabellen en de primaire sleutel
  6. 6Gegevens koppelen
  7. 7De één op veel relatie
  8. 8De veel op veel relatie
  9. 9De één op één relatie
  10. 10Database normaliseren
  11. 11De eerste normaalvorm (1NF)
  12. 12De tweede normaalvorm (2NF)
  13. 13De derde normaalvorm (3NF)
  14. 14Het definitieve database-ontwerp
  15. 15Nog een voorbeeld: webwinkel
  16. 16Conclusie
Schrijf voor Tekstenuitleg!
Ben jij goed in schrijven en weet je veel van een computergerelateerd onderwerp? Schrijf dan betaald artikelen voor Tekstenuitleg.net! Lees meer...

De inhoud van Tekstenuitleg is beschermd door auteursrecht en mag niet gekopieerd worden zonder schriftelijke toestemming van Tekstenuitleg.net. Lees svp de voorwaarden.