⊗ppPmDOLT 381 of 447 menu

Het koppelen van tabellen in databases

Stel we hebben een tabel met gebruikersnamen en de steden waar ze wonen:

users
id name city
1 user1 city1
2 user2 city1
3 user3 city2
4 user4 city1
5 user5 city3
6 user6 city2

Het nadeel van deze tabel is dat dezelfde stad meerdere keren wordt herhaald voor verschillende gebruikers. Dit leidt tot enkele problemen.

Ten eerste leidt het constante herhalen ertoe dat de database veel meer ruimte gaat innemen.

Ten tweede is het behoorlijk onhandig om bewerkingen met steden uit te voeren. Stel, we willen een lijst van alle steden op het scherm tonen. Zo eenvoudig is dat niet te doen. We zullen alle gebruikers samen met hun steden moeten krijgen, verwijder dan duplicaten uit de verkregen steden en pas dan krijgen we deze lijst.

Stel je nu voor dat er in de database 10000 gebruikers zijn uit 10 steden - voor deze 10 steden zullen we de hele tabel moeten ophalen met een enorm aantal rijen - het wordt een erg trage operatie met zinloos verspilling van bronnen.

Oplossing voor het probleem

We moeten onze tabel splitsen in twee: in de ene worden steden opgeslagen, en in de tweede - gebruikers. Hierbij zal in de tabel met gebruikers een kolom city_id staan, die zal verwijzen naar de stad van de gebruiker.

Laten we dus twee tabellen maken. Tabel met steden:

cities
id name
1 city1
2 city2
3 city3

Tabel met gebruikers:

users
id name city_id
1 user1 1
2 user2 1
3 user3 2
4 user4 1
5 user5 3
6 user6 2

Stel dat je producten moet opslaan (naam, prijs, hoeveelheid) en de categorieën van deze producten. Beschrijf de opslagstructuur.

Stel dat je rivieren en de zeeën waarin deze rivieren uitmonden moet opslaan. Beschrijf de opslagstructuur.

Stel dat je steden en landen moet opslaan, waarin ze zich bevinden. Beschrijf de opslagstructuur.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren