2e reden

De 2e ook wel belangrijke reden is het feit dat een goed gemaakte database kleiner is dan een niet genormaliseerde database. Stel jij hebt een fruitwinkel en al je klanten wonen in Wijnjewoude.
Je wilt de klanten graag in een database met het adres van de klant zodat je de postduif er op af kunt sturen. Wat zou het nou jammer zijn als je het zo zou doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Naam    Voorletter    straat               Nr       Pc           Plaats
Boven      K            Merkebuorren     82     9241GH     Wijnjewoude

Er wonen namelijk ongeveer 2500 man in Wijnjewoude waarvan 200 aan de Merkebuorren. Dit houd in dat op de bovenstaande manier ik 2499 keer teveel de plaatsnaam in mijn database zet en 199 keer de straatnaam.

Dit is dus een beter idee.
Tabel klanten
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Klant_id    Klant_voorlett    Klant_naam
1               K                   Boven

Tabel adres
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
adres_id    plaats_id    straat_id    huisnummer
453                    1           79000            82


Tabel plaatsen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Plaats_id    Plaats_naam
1               Wijnjewoude


Tabel straten
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Straat_id    Straat_naam
79000             Merkebuorren


Zoals je ziet is er geen relatie tussen de zeer gewaardeerde klant en het adres waar deze woont er moet dus nog een tabel komen.

Tabel adresklant
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Klant_id    adres_id
1               453


Een logische gedachte is om de straatnaam te koppelen aan de plaatsnaam. Dit is echter niet juist. De dorpstraat komt in praktisch alle plaatsen voor koppel je deze aan de plaatsnaam dan heb je weer dat een gegeven meerdere keren in je database voorkomt en dat willen we niet. De straat koppel je aan een adres. Een adres is uniek.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Het datamodel.
  2. Waarom schrijf ik deze tut.
  3. In deze tut zal ik het volgende behandelen
  4. Wat is normalisatie van een database.
  5. de bedenker
  6. Nu een veel belangrijker vraag
  7. 2e reden
  8. de query

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.