Relationel datamodel i DBMS | Database Concepts & Eksempel
Hvad er en relationel model?
Relationsmodel (RM) repræsenterer databasen som en samling af relationer. En relation er intet andet end en værditabel. Hver række i tabellen repræsenterer en samling af relaterede dataværdier. Disse rækker i tabellen angiver en entitet eller relation i den virkelige verden.
Tabelnavnet og kolonnenavnene er nyttige til at fortolke betydningen af værdier i hver række. Dataene er repræsenteret som et sæt af relationer. I relationsmodellen lagres data som tabeller. Den fysiske lagring af dataene er dog uafhængig af den måde, dataene er logisk organiseret på.
Nogle populære relationsdatabasestyringssystemer er:
- DB2 og Informix Dynamic Server – IBM
- Oracle og RDB – Oracle
- SQL Server og Access – Microsoft
Relationsmodel Concepts i DBMS
- Egenskab: Hver kolonne i en tabel. Attributter er de egenskaber, der definerer en relation. f.eks. Student_Rollno, NAME osv.
- tabeller – I Relationsmodellen gemmes relationerne i tabelformatet. Det gemmes sammen med dets enheder. En tabel har to egenskabsrækker og -kolonner. Rækker repræsenterer poster, og kolonner repræsenterer attributter.
- Tuple – Det er ikke andet end en enkelt række i en tabel, som indeholder en enkelt post.
- Relationsskema: Et relationsskema repræsenterer navnet på relationen med dens attributter.
- Grad: Det samlede antal attributter, som i relationen kaldes graden af relationen.
- Kardinalitet: Samlet antal rækker i tabellen.
- Kolonne: Kolonnen repræsenterer værdisættet for en specifik attribut.
- Relationsforekomst – Relationsinstans er et endeligt sæt af tuples i RDBMS-systemet. Relationsforekomster har aldrig dublerede tupler.
- Relationsnøgle – Hver række har en, to eller flere attributter, som kaldes relationsnøgle.
- Attributdomæne - Hver attribut har en foruddefineret værdi og omfang, som er kendt som attributdomæne
Relationel Integrity Begrænsninger
Relationel Integrity begrænsninger i DBMS henvises til betingelser, der skal være til stede for en gyldig relation. Disse relationelle begrænsninger i DBMS er afledt af reglerne i den miniverden, som databasen repræsenterer.
Der er mange typer af Integrity Begrænsninger i DBMS. Begrænsninger på det relationelle databasestyringssystem er for det meste opdelt i tre hovedkategorier:
- Domænebegrænsninger
- Nøglebegrænsninger
- Henvisende Integrity Begrænsninger
Domænebegrænsninger
Domænebegrænsninger kan blive overtrådt, hvis en attributværdi ikke vises i det tilsvarende domæne, eller den ikke er af den relevante datatype.
Domænebegrænsninger angiver, at inden for hver tupel, og værdien af hver attribut skal være unik. Dette er specificeret som datatyper, der inkluderer standarddatatyper heltal, reelle tal, tegn, booleaner, strenge med variabel længde osv.
Eksempel:
Create DOMAIN CustomerName CHECK (value not NULL)
Det viste eksempel viser oprettelse af en domænebegrænsning, således at CustomerName ikke er NULL
Nøglebegrænsninger
En egenskab, der unikt kan identificere en tupel i en relation, kaldes tabellens nøgle. Værdien af attributten for forskellige tuples i relationen skal være unik.
Eksempel:
I den givne tabel er CustomerID en nøgleattribut for Customer Table. Det er højst sandsynligt at have en enkelt nøgle til én kunde, Kunde-ID =1 er kun for Kundenavnet =” Google”.
Kunde ID | Kundenavn | Status |
---|---|---|
1 | Aktiv | |
2 | Amazon | Aktiv |
3 | Apple | Inaktiv |
Henvisende Integrity Begrænsninger
Henvisende Integrity begrænsninger i DBMS er baseret på konceptet udenlandske nøgler. En fremmednøgle er en vigtig egenskab ved en relation, som bør henvises til i andre relationer. Referenceintegritetsbegrænsningstilstand opstår, hvor relation refererer til en nøgleegenskab for en anden eller samme relation. Dette nøgleelement skal dog eksistere i tabellen.
Eksempel:
I ovenstående eksempel har vi 2 relationer, Kunde og BillIng.
Tuple for CustomerID =1 refereres to gange i relationen Billing. Så vi ved, at CustomerName=Google har et faktureringsbeløb på $300
Operationer i relationsmodel
Fire grundlæggende opdateringsoperationer udført på relationel databasemodel er
Indsæt, opdater, slet og vælg.
- Insert bruges til at indsætte data i relationen
- Slet bruges til at slette tupler fra bordet.
- Modify giver dig mulighed for at ændre værdierne for nogle attributter i eksisterende tuples.
- Vælg giver dig mulighed for at vælge et specifikt dataområde.
Når en af disse handlinger anvendes, må integritetsbegrænsninger, der er angivet på relationsdatabaseskemaet, aldrig overtrædes.
indsatte Operation
Indsæt-operationen giver værdier af attributten for en ny tupel, som skal indsættes i en relation.
Opdatering Operation
Du kan se, at i nedenstående relationstabel CustomerName= 'Apple' er opdateret fra Inaktiv til Aktiv.
Slette Operation
For at specificere sletning vælger en betingelse på relationens attributter den tuple, der skal slettes.
I det ovenfor givne eksempel er CustomerName= "Apple" slettet fra tabellen.
Slet-operationen kan krænke referenceintegriteten, hvis den tuple, der slettes, refereres af fremmednøgler fra andre tuples i samme database.
Type Operation
I det ovenfor givne eksempel, CustomerName="Amazon” er valgt
Bedste praksis for at skabe en relationel model
- Data skal repræsenteres som en samling af relationer
- Hver relation skal være tydeligt afbildet i tabellen
- Rækker skal indeholde data om forekomster af en enhed
- Kolonner skal indeholde data om entitetens attributter
- Celler i tabellen skal indeholde en enkelt værdi
- Hver kolonne skal have et unikt navn
- Ikke to rækker kan være identiske
- Værdierne for en attribut skal være fra det samme domæne
Fordele ved relationel databasemodel
- Enkelhed: En relationel datamodel i DBMS er enklere end den hierarkiske model og netværksmodel.
- Strukturel uafhængighed: Relationsdatabasen er kun optaget af data og ikke med en struktur. Dette kan forbedre modellens ydeevne.
- Let at bruge: Relationsmodellen i DBMS er nem, da tabeller bestående af rækker og kolonner er ret naturlige og nemme at forstå
- Forespørgselsevne: Det gør det muligt for et forespørgselssprog på højt niveau som SQL for at undgå kompleks databasenavigation.
- Datauafhængighed: Strukturen af relationel database kan ændres uden at skulle ændre nogen applikation.
- Skalerbar: Med hensyn til et antal poster eller rækker og antallet af felter, bør en database forstørres for at forbedre dens anvendelighed.
Ulemper ved relationel model
- Få relationelle databaser har grænser for feltlængder, som ikke kan overskrides.
- Relationelle databaser kan nogle gange blive komplekse, efterhånden som mængden af data vokser, og relationerne mellem datastykker bliver mere komplicerede.
- Komplekse relationelle databasesystemer kan føre til isolerede databaser, hvor informationen ikke kan deles fra et system til et andet.
Resumé
- Den relationelle databasemodellering repræsenterer databasen som en samling af relationer (tabeller)
- Attribut, tabeller, tuple, relationsskema, grad, kardinalitet, kolonne, relationsforekomst er nogle vigtige komponenter i relationsmodellen
- Relationel Integrity begrænsninger henvises til betingelser, der skal være til stede for en gyldig relationstilgang i DBMS
- Domænebegrænsninger kan blive overtrådt, hvis en attributværdi ikke vises i det tilsvarende domæne, eller den ikke er af den relevante datatype
- Indsæt, Vælg, Rediger og Slet er de operationer, der udføres i relationsmodellens begrænsninger
- Den relationelle database handler kun om data og ikke en struktur, der kan forbedre modellens ydeevne
- Fordele ved Relationel model i DBMS er enkelhed, strukturel uafhængighed, brugervenlighed, forespørgselskapacitet, datauafhængighed, skalerbarhed osv.
- Få relationelle databaser har grænser for feltlængder, som ikke kan overskrides.