Relasjonsdatamodell i DBMS: Concepts & Eksempel
โก Smart oppsummering
Relasjonsmodellen representerer en database som en samling av relasjoner, der hver relasjon er en tabell med rader og kolonner. Den definerer kjernekonsepter, integritetsbegrensninger og oppdateringsoperasjoner som holder relasjonsdata konsistente og enkle รฅ spรธrre.

Hva er den relasjonelle modellen?
Relasjonsmodell (RM) representerer databasen som en samling av relasjoner. En relasjon er ikke annet enn en verditabell. Hver rad i tabellen representerer en samling av relaterte dataverdier. Disse radene i tabellen angir en reell enhet eller relasjon.
Tabellnavnet og kolonnenavnene hjelper til med รฅ tolke betydningen av verdiene i hver rad. Dataene er representert som et sett med relasjoner. I relasjonsmodellen lagres data som tabeller. Den fysiske lagringen av dataene er imidlertid uavhengig av hvordan dataene er logisk organisert.
Modellen ble foreslรฅtt av EF Codd i 1970 og er fortsatt grunnlaget for nesten alle vanlige databaser som er i bruk i dag. Noen populรฆre relasjonsdatabasehรฅndteringssystemer er:
- DB2 og Informix Dynamic Server โ IBM
- Oracle og RDB โ Oracle
- SQL Server og tilgang โ Microsoft
Relasjonsmodell Concepts i DBMS
- Egenskap: Hver kolonne i en tabell. Attributter er egenskapene som definerer en relasjon, f.eks. Student_Rollnr, NAVN osv.
- bord: I relasjonsmodellen lagres relasjoner i tabellformat. De lagres sammen med enhetene. En tabell har to egenskaper, rader og kolonner. Rader representerer poster og kolonner representerer attributter.
- Tuppel: Det er ikke annet enn en enkelt rad i en tabell, som inneholder รฉn enkelt post.
- Relasjonsskjema: Et relasjonsskjema representerer navnet pรฅ relasjonen med dens attributter.
- Grad: Det totale antallet attributter i relasjonen kalles relasjonens grad.
- Kardinalitet: Det totale antallet rader som finnes i tabellen.
- Kolonne: Kolonnen representerer settet med verdier for et spesifikt attributt.
- Relasjonsinstans: En relasjonsinstans er et endelig sett med tupler i RDBMS-systemet. Relasjonsinstanser har aldri dupliserte tupler.
- Relasjonsnรธkkel: Hver rad har ett, to eller flere attributter, som kalles relasjonsnรธkkelen.
- Attributtdomene: Hvert attributt har en forhรฅndsdefinert verdi og omfang, som er kjent som attributtdomenet.
Med vokabularet pรฅ plass, er neste bekymring รฅ holdeping dataene i disse relasjonene er gyldige, som er jobben med integritetsbegrensninger.
Relasjonelt Integrity begrensninger
Relasjonsintegritetsbegrensninger i DBMS refererer til betingelser som mรฅ vรฆre til stede for en gyldig relasjon. Disse relasjonsbegrensningene er avledet fra reglene i miniverdenen som databasen representerer.
Det finnes mange typer integritetsbegrensninger. Begrensninger pรฅ relasjonsdatabaseadministrasjonssystemet er stort sett delt inn i tre hovedkategorier:
- Domenebegrensninger
- Nรธkkelbegrensninger
- Referensielt Integrity begrensninger
Domenebegrensninger
Domenebegrensninger kan brytes hvis en attributtverdi ikke vises i det tilsvarende domenet, eller hvis den ikke er av riktig datatype.
Domenebegrensninger spesifiserer at innenfor hver tuple mรฅ verdien til hvert attributt vรฆre atomisk og hentet fra riktig domene. Domener er spesifisert som datatyper, som inkluderer standardtyper som heltall, reelle tall, tegn, boolske verdier og strenger med variabel lengde.
Eksempel:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
Eksemplet som vises demonstrerer hvordan man oppretter en domenebegrensning slik at CustomerName ikke er NULL.
Nรธkkelbegrensninger
Et attributt som unikt kan identifisere en tuppel i en relasjon kalles nรธkkelen til tabellen. Verdien av attributtet for forskjellige tupler i relasjonen mรฅ vรฆre unik.
Eksempel:
I den gitte tabellen er KundeID et nรธkkelattributt i Kundetabellen. Det er mest sannsynlig at den har รฉn enkelt nรธkkel for รฉn kunde; KundeID = 1 er bare for Kundenavnet.GoogleEn fullstendig behandling av de ulike nรธkkeltypene er dekket i veiledningen til DBMS-nรธkler.
| Kunde ID | Kundenavn | status |
|---|---|---|
| 1 | Aktiv | |
| 2 | Amazon | Aktiv |
| 3 | eple | inaktiv |
Referensielt Integrity begrensninger
Referanseintegritetsbegrensninger i DBMS er basert pรฅ konseptet med fremmednรธkler. En fremmednรธkkel er et viktig attributt for en relasjon som det skal refereres til i andre relasjoner. En referanseintegritetsbegrensning oppstรฅr nรฅr en relasjon refererer til et nรธkkelattributt for en annen eller samme relasjon. Dette nรธkkelelementet mรฅ finnes i den refererte tabellen.
Eksempel:
I eksemplet ovenfor har vi to relasjoner, kunde og Billing.
Tuplet for CustomerID = 1 refereres to ganger i relasjonen. Billing. Sรฅ vi vet Kundenavn โGoogleยซhar et faktureringsbelรธp pรฅ 300 dollar.ยป
Operasjoner i den relasjonelle modellen
Fire grunnleggende oppdateringsoperasjoner utfรธres pรฅ den relasjonelle databasemodellen: sett inn, oppdater, slett og velg.
- Insert brukes til รฅ sette inn data i relasjonen.
- Slett brukes til รฅ slette tupler fra tabellen.
- Modify lar deg endre verdiene til noen attributter i eksisterende tuples.
- Velg lar deg velge et spesifikt dataomrรฅde.
Nรฅr en av disse operasjonene brukes, mรฅ integritetsbegrensningene som er spesifisert i det relasjonelle databaseskjemaet aldri brytes.
innfelt Operasjon
Innsettingsoperasjonen gir verdier for attributtene for en ny tuple som skal settes inn i en relasjon.
Oppdater Operasjon
Du kan se at i relasjonstabellen nedenfor er kundenavnet ยซAppleยป oppdatert fra inaktiv til aktiv.
Delete Operasjon
For รฅ spesifisere sletting velger en betingelse pรฅ attributtene til relasjonen tuppelen som skal slettes.
I eksemplet ovenfor er kundenavnet ยซAppleยป slettet fra tabellen.
Sletteoperasjonen kan krenke referensiell integritet hvis tuplen som slettes refereres til av fremmednรธkler fra andre tupler i samme database.
Velg Operasjon
I eksemplet ovenfor, KundenavnAmazonโEr valgt.
Relasjonsmodell vs. hierarkiske og nettverksmodeller
Den relasjonelle modellen erstattet to tidligere tilnรฆrminger, og kontrasten forklarer hvorfor den ble dominerende. Tabellen nedenfor setter de tre side om side.
| Aspekt | Relasjonsmodell | Hierarkisk modell | Nettverksmodell |
|---|---|---|---|
| Structure | Tabeller (relasjoner) | Tre, fra foreldre til barn | Graf, mange til mange |
| Datatilgang | Deklarativ, etter verdi | Navigasjon, etter sti | Navigasjon, med peker |
| Relasjoner | Utenlandske nรธkler | Foreldre-barn-lenker | Sett og pekere |
| Spรธrresprรฅk | SQL | Prosedyrekode | Prosedyrekode |
| Fleksibilitet | Hรธyt | Lav | Medium |
Fordi relasjonsmodellen adresserer data etter verdi snarere enn ved รฅ navigere i fysiske lenker, kan et hรธynivรฅsprรฅk som SQL kan stille en forespรธrsel uten รฅ vite hvordan dataene er lagret.
Beste praksis for รฅ lage en relasjonsmodell
- Data mรฅ representeres som en samling av relasjoner.
- Hver sammenheng bรธr vรฆre tydelig vist i tabellen.
- Rader bรธr inneholde data om forekomster av en enhet.
- Kolonner mรฅ inneholde data om enhetens attributter.
- Cellene i tabellen skal inneholde รฉn enkelt verdi.
- Hver kolonne bรธr gis et unikt navn.
- Ingen to rader kan vรฆre identiske.
- Verdiene til et attributt bรธr vรฆre fra samme domene.
Fordeler med relasjonsdatabasemodellen
- Enkelhet: En relasjonell datamodell i DBMS er enklere enn hierarkiske modeller og nettverksmodeller.
- Strukturell uavhengighet: Den relasjonelle databasen er kun opptatt av data og ikke av struktur, noe som kan forbedre modellens ytelse.
- Enkel รฅ bruke: Relasjonsmodellen er enkel รฅ bruke, ettersom tabeller som bestรฅr av rader og kolonner er naturlige og enkle รฅ forstรฅ.
- Spรธrrefunksjon: Det gjรธr det mulig for et spรธrresprรฅk pรฅ hรธyt nivรฅ som SQL รฅ unngรฅ kompleks databasenavigasjon.
- Datauavhengighet: Strukturen til en relasjonsdatabase kan endres uten รฅ mรฅtte endre noen applikasjon.
- Skalerbar: Nรฅr det gjelder antall poster eller rader og antall felt, kan en database utvides for รฅ forbedre brukervennligheten.
Ulemper med den relasjonelle modellen
- Fรฅ relasjonsdatabaser har grenser for feltlengder, som ikke kan overskrides.
- Relasjonsdatabaser kan noen ganger bli komplekse etter hvert som datamengden vokser og forholdet mellom dataelementer blir mer komplisert.
- Komplekse relasjonelle databasesystemer kan fรธre til isolerte databaser der informasjon ikke kan deles fra ett system til et annet.






