Relationeel datamodel in DBMS: Concepts & Voorbeeld
โก Slimme samenvatting
Het relationele model representeert een database als een verzameling relaties, waarbij elke relatie een tabel is met rijen en kolommen. Het definieert kernconcepten, integriteitsbeperkingen en updatebewerkingen die relationele gegevens consistent en gemakkelijk doorzoekbaar houden.

Wat is het relationele model?
Relationeel model (RM) representeert de database als een verzameling relaties. Een relatie is niets anders dan een tabel met waarden. Elke rij in de tabel vertegenwoordigt een verzameling gerelateerde gegevenswaarden. Deze rijen in de tabel duiden een entiteit of relatie uit de echte wereld aan.
De tabelnaam en kolomnamen helpen bij het interpreteren van de betekenis van de waarden in elke rij. De gegevens worden weergegeven als een set relaties. In het relationele model worden gegevens opgeslagen als tabellen. De fysieke opslag van de gegevens is echter onafhankelijk van de manier waarop de gegevens logisch georganiseerd zijn.
Het model werd in 1970 voorgesteld door EF Codd en vormt nog steeds de basis van vrijwel elke gangbare database die tegenwoordig in gebruik is. Enkele populaire relationele databasesystemen zijn:
- DB2 en Informix dynamische server โ IBM
- Oracle en RDB โ Oracle
- SQL Server en toegang โ Microsoft
Relationeel model Concepts in DBMS
- Attribuut: Elke kolom in een tabel. Attributen zijn de eigenschappen die een relatie definiรซren, bijvoorbeeld Student_Rollno, NAAM, enz.
- tabellen: In het relationele model worden relaties opgeslagen in tabelvorm. Deze tabel wordt samen met de bijbehorende entiteiten opgeslagen. Een tabel heeft twee eigenschappen: rijen en kolommen. Rijen vertegenwoordigen records en kolommen vertegenwoordigen attributen.
- tupel: Het is niets anders dan een enkele rij in een tabel, die รฉรฉn enkel record bevat.
- Relatieschema: Een relatieschema vertegenwoordigt de naam van de relatie met zijn attributen.
- Mate: Het totale aantal attributen in de relatie wordt de graad van de relatie genoemd.
- Kardinaliteit: Het totale aantal rijen in de tabel.
- Kolom: De kolom vertegenwoordigt de reeks waarden voor een specifiek attribuut.
- Relatie-instantie: Een relatie-instantie is een eindige verzameling tuples in het RDBMS-systeem. Relatie-instanties bevatten nooit dubbele tuples.
- Relatie sleutel: Elke rij heeft een, twee of meerdere attributen, die de relatiesleutel worden genoemd.
- Attribuutdomein: Elk attribuut heeft een vooraf gedefinieerde waarde en reikwijdte, wat bekend staat als het attribuutdomein.
Nu de woordenschat op orde is, is de volgende stap het behouden van...ping De gegevens in die relaties moeten geldig zijn, en dat is de taak van integriteitsbeperkingen.
relationele Integrity beperkingen
In een databasemanagementsysteem verwijzen relationele integriteitsbeperkingen naar voorwaarden waaraan moet worden voldaan voor een geldige relatie. Deze relationele beperkingen zijn afgeleid van de regels in de mini-wereld die de database representeert.
Er bestaan โโveel soorten integriteitsbeperkingen. Beperkingen op relationele databasesystemen worden over het algemeen onderverdeeld in drie hoofdcategorieรซn:
- Domeinbeperkingen
- Belangrijkste beperkingen
- referentieel Integrity beperkingen
Domeinbeperkingen
Domeinbeperkingen kunnen worden geschonden als een attribuutwaarde niet voorkomt in het corresponderende domein, of als deze niet van het juiste gegevenstype is.
Domeinbeperkingen specificeren dat binnen elke tuple de waarde van elk attribuut atomair moet zijn en afkomstig moet zijn uit het juiste domein. Domeinen worden gespecificeerd als gegevenstypen, waaronder standaardtypen zoals gehele getallen, reรซle getallen, tekens, Booleaanse waarden en tekenreeksen met variabele lengte.
Voorbeeld:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
Het getoonde voorbeeld illustreert het creรซren van een domeinbeperking zodat CustomerName niet NULL is.
Belangrijkste beperkingen
Een attribuut dat op unieke wijze een tupel in een relatie kan identificeren, wordt de sleutel van de tabel genoemd. De waarde van het attribuut voor verschillende tupels in de relatie moet uniek zijn.
Voorbeeld:
In de gegeven tabel is CustomerID een sleutelkenmerk van de tabel Customer. Het is zeer waarschijnlijk dat er รฉรฉn sleutel is voor รฉรฉn klant; CustomerID = 1 is alleen van toepassing op de klantnaam.GoogleEen volledige beschrijving van de verschillende sleuteltypen is te vinden in de handleiding. DBMS-sleutels.
| Klanten ID | Klantnaam | Status |
|---|---|---|
| 1 | Actief | |
| 2 | Amazon | Actief |
| 3 | Appel | Inactief |
referentieel Integrity beperkingen
Referentiรซle integriteitsbeperkingen in DBMS zijn gebaseerd op het concept van foreign keys. Een foreign key is een belangrijk attribuut van een relatie waarnaar in andere relaties moet worden verwezen. Een referentiรซle integriteitsbeperking treedt op wanneer een relatie verwijst naar een sleutelattribuut van een andere of dezelfde relatie. Dat sleutelelement moet bestaan โโin de tabel waarnaar wordt verwezen.
Voorbeeld:
In het bovenstaande voorbeeld hebben we twee relaties: Klant en BillIng.
De tuple voor CustomerID = 1 wordt tweemaal in de relatie gebruikt. Billing. Dus we weten Klantnaam โGoogle" heeft een factuurbedrag van $300.
Operaties in het relationele model
In een relationele database worden vier basisbewerkingen uitgevoerd: invoegen, bijwerken, verwijderen en selecteren.
- Met 'insert' voeg je gegevens in de relatie in.
- Verwijderen wordt gebruikt om tupels uit de tabel te verwijderen.
- Met Modify kunt u de waarden van sommige attributen in bestaande tupels wijzigen.
- Met Selecteren kunt u een specifiek gegevensbereik kiezen.
Wanneer een van deze bewerkingen wordt uitgevoerd, mogen de integriteitsbeperkingen die zijn gespecificeerd in het relationele databaseschema nooit worden geschonden.
Invoegen Operatie
De invoegbewerking geeft de waarden van de attributen voor een nieuwe tuple die in een relatie moet worden ingevoegd.
bijwerken Operatie
Zoals u in de onderstaande relatietabel kunt zien, is de klantnaam 'Apple' bijgewerkt van Inactief naar Actief.
Verwijdering Operatie
Om verwijdering te specificeren, selecteert een voorwaarde op de attributen van de relatie de tuple die moet worden verwijderd.
In het bovenstaande voorbeeld wordt CustomerName โAppleโ uit de tabel verwijderd.
De verwijderingsbewerking kan de referentiรซle integriteit schenden als de te verwijderen tuple wordt aangeroepen door externe sleutels vanuit andere tuples in dezelfde tuple. databank.
Selecteren Operatie
In het bovenstaande voorbeeld is CustomerName โAmazon" is geselecteerd.
Relationeel model versus hiรซrarchische en netwerkmodellen
Het relationele model verving twee eerdere benaderingen, en het contrast verklaart waarom het dominant werd. De tabel hieronder zet de drie modellen naast elkaar.
| Aspect | Relationeel model | Hiรซrarchisch model | Netwerkmodel |
|---|---|---|---|
| Structuur | Tabellen (relaties) | Boom, ouder naar kind | Grafiek, veel-op-veel |
| Toegang tot data | Declaratief, op basis van waarde | Navigatie, via pad | Navigatie, via aanwijzer |
| Relaties | Vreemde sleutels | Ouder-kindverbindingen | Sets en pointers |
| Zoektaal | SQL | Procedurecode | Procedurecode |
| Flexibiliteit | Hoge | Laag | Medium |
Omdat het relationele model gegevens benadert op basis van waarde in plaats van door fysieke verbindingen te navigeren, is een programmeertaal op hoog niveau zoals SQL Een query kan worden geformuleerd zonder te weten hoe de gegevens zijn opgeslagen.
Beste werkwijzen voor het creรซren van een relationeel model
- Gegevens moeten worden weergegeven als een verzameling relaties.
- Elke relatie moet duidelijk in de tabel worden weergegeven.
- Rijen moeten gegevens bevatten over instanties van een entiteit.
- De kolommen moeten gegevens bevatten over de kenmerken van de entiteit.
- De cellen van de tabel mogen slechts รฉรฉn waarde bevatten.
- Elke kolom moet een unieke naam krijgen.
- Geen twee rijen kunnen identiek zijn.
- De waarden van een attribuut moeten afkomstig zijn uit hetzelfde domein.
Voordelen van het relationele databasemodel
- Eenvoud: Een relationeel datamodel in een DBMS is eenvoudiger dan de hiรซrarchische en netwerkmodellen.
- Structurele onafhankelijkheid: Een relationele database houdt zich uitsluitend bezig met data en niet met de structuur, wat de prestaties van het model kan verbeteren.
- Gemakkelijk te gebruiken: Het relationele model is gemakkelijk te gebruiken, omdat tabellen met rijen en kolommen natuurlijk en eenvoudig te begrijpen zijn.
- Querymogelijkheid: Hierdoor kan een geavanceerde querytaal zoals SQL complexe databasenavigatie vermijden.
- Gegevensonafhankelijkheid: De structuur van een relationele database kan worden gewijzigd zonder dat de applicatie zelf hoeft te worden aangepast.
- schaalbaar: Wat betreft het aantal records of rijen en het aantal velden, kan een database worden uitgebreid om de bruikbaarheid ervan te verbeteren.
Nadelen van het relationele model
- Weinig relationele databases hebben limieten voor veldlengtes die niet overschreden mogen worden.
- Relationele databases kunnen soms complex worden naarmate de hoeveelheid gegevens toeneemt en de relaties tussen de gegevenselementen ingewikkelder worden.
- Complexe relationele databasesystemen kunnen leiden tot geรฏsoleerde databases waarin informatie niet tussen systemen kan worden gedeeld.






