logo

Relacijski model v DBMS

E. F. Codd je predlagal relacijski model za modeliranje podatkov v obliki relacij ali tabel. Po oblikovanju konceptualnega modela podatkovne baze z uporabo ER diagram , moramo konceptualni model pretvoriti v relacijski model, ki ga je mogoče implementirati s katerim koli RDBMS jezik, kot je Oracle SQL, MySQL itd. Tako bomo videli, kaj je relacijski model.

Relacijski model uporablja zbirko tabel za predstavitev podatkov in odnosov med temi podatki. Vsaka tabela ima več stolpcev in vsak stolpec ima edinstveno ime. Tabele so znane tudi kot relacije. Relacijski model je primer modela, ki temelji na zapisih. Modeli, ki temeljijo na zapisih, so tako imenovani, ker je zbirka podatkov strukturirana v zapisih s fiksnim formatom več vrst. Vsaka tabela vsebuje zapise določene vrste. Vsaka vrsta zapisa določa fiksno število polj ali atributov. Stolpci tabele ustrezajo atributom vrste zapisa. Relacijski podatkovni model je najpogosteje uporabljen podatkovni model in velika večina trenutnih sistemov baz podatkov temelji na relacijskem modelu.



Kaj je relacijski model?

Relacijski model predstavlja, kako so podatki shranjeni v relacijskih bazah podatkov. Relacijska zbirka podatkov je sestavljena iz zbirke tabel, od katerih je vsaki dodeljeno edinstveno ime. Razmislite o relaciji STUDENT z atributi ROLL_NO, NAME, ADDRESS, PHONE in AGE, prikazanimi v tabeli.

Tabela Študent

ROLL_ŠT IME NASLOV TELEFON STAROST
1 Oven DELHI 9455123451 18
2 RAMESH GURGAON 9652431543 18
3 SUJIT ROHTAK 9156253131 dvajset
4 SUREŠ DELHI 18



opombe pod črto

Pomembne terminologije

  • atribut: Atributi so lastnosti, ki definirajo entiteto. npr.; ROLL_ŠT , IME, NASLOV
  • Shema relacije: Shema relacije definira strukturo relacije in predstavlja ime relacije z njenimi atributi. npr.; STUDENT (ROLL_NO, IME, ADDRESS, PHONE in AGE) je relacijska shema za STUDENT. Če ima shema več kot eno relacijo, se imenuje relacijska shema.
  • Tuple: Vsaka vrstica v relaciji je znana kot tuple. Zgornja relacija vsebuje 4 tuple, od katerih je eden prikazan kot:
1 Oven DELHI 9455123451 18
  • Primer relacije: Množica tulp relacije v določenem časovnem trenutku se imenuje primer relacije. Tabela 1 prikazuje primerek relacije STUDENT v določenem času. Spremeni se lahko vsakič, ko je v bazi podatkov vstavljena, izbrisana ali posodobljena.
  • stopnja: Število atributov v relaciji je znano kot stopnja relacije. The ŠTUDENT zgoraj definirana relacija ima stopnjo 5.
  • Kardinalnost: Število tuplev v relaciji je znano kot kardinalnost . The ŠTUDENT relacija, definirana zgoraj, ima kardinalnost 4.
  • Stolpec: Stolpec predstavlja niz vrednosti za določen atribut. Stolpec ROLL_ŠT je izvlečen iz relacije ŠTUDENT.
ROLL_ŠT

1

2

3



4

  • NULL Vrednosti: Vrednost, ki ni znana ali ni na voljo, se imenuje vrednost NULL. Predstavlja ga prazen prostor. npr.; TELEFON STUDENTA z ROLL_NO 4 je NULL.
  • Relacijski ključ: To so v bistvu ključi, ki se uporabljajo za edinstveno identifikacijo vrstic ali pomagajo tudi pri prepoznavanju tabel. To so naslednje vrste.
    • Primarni ključ
    • Ključ kandidata
    • Super ključ
    • Tuji ključ
    • Nadomestni ključ
    • Sestavljeni ključ

Omejitve v relacijskem modelu

Med načrtovanjem relacijskega modela definiramo nekatere pogoje, ki morajo veljati za podatke, prisotne v bazi podatkov, ki se imenujejo omejitve. Te omejitve se preverijo, preden se izvede kakršna koli operacija (vstavljanje, brisanje in posodabljanje) v bazi podatkov. Če pride do kršitve katere koli od omejitev, operacija ne bo uspela.

Omejitve domene

To so omejitve na ravni atributov. Atribut lahko sprejme samo vrednosti, ki so znotraj obsega domene. npr.; Če je za relacijo STUDENT uporabljena omejitev AGE>0, bo vstavljanje negativne vrednosti AGE povzročilo neuspeh.

kaj so velike in male črke v sql

Integriteta ključa

Vsaka relacija v zbirki podatkov mora imeti vsaj en nabor atributov, ki enolično definirajo zbirko. Ta niz atributov se imenuje ključi. npr.; ROLL_NO v STUDENT je ključnega pomena. Dva študenta ne moreta imeti iste številke. Torej ima ključ dve lastnosti:

  • Biti mora edinstven za vse tuple.
  • Ne sme imeti vrednosti NULL.

Referenčna integriteta

Ko lahko en atribut relacije prevzame vrednosti le iz drugega atributa iste relacije ali katere koli druge relacije, se imenuje referenčna celovitost . Recimo, da imamo 2 razmerja

linux zaženi cmd

Tabela Študent

ROLL_ŠT IME NASLOV TELEFON STAROST BRANCH_CODE
1 Oven DELHI 9455123451 18 CS
2 RAMESH GURGAON 9652431543 18 CS
3 SUJIT ROHTAK 9156253131 dvajset ECE
4 SUREŠ DELHI 18 IT

Namizna veja

BRANCH_CODE BRANCH_NAME
CS RAČUNALNIŠTVO
IT INFORMACIJSKA TEHNOLOGIJA
ECE ELEKTRONIKA IN KOMUNIKACIJSKI INŽENIRING
CV NIZKE GRADNJE

BRANCH_CODE od STUDENT lahko sprejme le vrednosti, ki so prisotne v BRANCH_CODE od BRANCH, kar se imenuje omejitev referenčne integritete. Relacija, ki se sklicuje na drugo relacijo, se imenuje REFERENČNA RELACIJA (v tem primeru ŠTUDENT), relacija, na katero se nanašajo druge relacije, pa se imenuje REFERENČNA RELACIJA (v tem primeru VEJA).

Anomalije v relacijskem modelu

An anomalija je nepravilnost ali nekaj, kar odstopa od pričakovanega ali normalnega stanja. Pri načrtovanju baz podatkov prepoznamo tri vrste anomalij: Vstavi, Posodobi in Izbriši.

Anomalija vstavljanja v referenčno relacijo

Ne moremo vstaviti vrstice v REFERENČNO RELACIJO, če vrednost referenčnega atributa ni prisotna v referenčni vrednosti atributa. npr.; Vstavljanje študenta z BRANCH_CODE 'ME' v relacijo STUDENT bo povzročilo napako, ker 'ME' ni prisoten v BRANCH_CODE od BRANCH.

Anomalija brisanja/posodabljanja v referenčnem razmerju:

Ne moremo izbrisati ali posodobiti vrstice iz REFERENCED RELATION, če je vrednost REFERENCED ATTRIBUTE uporabljena v vrednosti REFERENCING ATTRIBUTE. npr. če poskušamo izbrisati tul iz BRANCH z BRANCH_CODE 'CS', bo to povzročilo napako, ker se na 'CS' sklicuje BRANCH_CODE od STUDENT, če pa poskusimo izbrisati vrstico iz BRANCH z BRANCH_CODE CV, bo izbrisana ker vrednost ni bila uporabljena v relaciji sklicevanja. Obravnava se lahko na naslednji način:

Na Delete Cascade

Izbrisal bo tuple iz REFERENCING RELATION, če je vrednost, ki jo uporablja REFERENCING ATTRIBUTE, izbrisana iz REFERENCED RELATION. npr.; Kajti, če izbrišemo vrstico iz BRANCH z BRANCH_CODE ‘CS’, bodo vrstice v relaciji STUDENT z BRANCH_CODE CS (ROLL_NO 1 in 2 v tem primeru) izbrisane.

Na posodobitvi Cascade

Posodobil bo REFERENCING ATRIBUTE v REFERENCING RELATION, če je vrednost atributa, ki jo uporablja REFERENCING ATTRIBUTE, posodobljena v REFERENCED RELATION. npr.; če posodobimo vrstico iz BRANCH z BRANCH_CODE ‘CS’ v ‘CSE’, bodo vrstice v relaciji STUDENT z BRANCH_CODE CS (ROLL_NO 1 in 2 v tem primeru) posodobljene z BRANCH_CODE ‘CSE’.

css za krepko

Super ključi

Vsak nabor atributov, ki nam omogoča identifikacijo edinstvenih vrstic (tork) v danem razmerju, je znan kot super ključi. Izmed teh super ključev lahko med njimi vedno izberemo ustrezno podmnožico, ki jo lahko uporabimo kot primarni ključ. Takšni ključi so znani kot ključi kandidatov. Če obstaja kombinacija dveh ali več atributov, ki se uporabljajo kot primarni ključ, potem to imenujemo sestavljeni ključ.

Coddova pravila v relacijskem modelu

Edgar F Codd je predlagal model relacijske baze podatkov, kjer je navedel pravila. Zdaj so ta pravila znana kot Coddova pravila. Da bi bila katera koli zbirka podatkov popolna, mora upoštevati pravila.

Za več glejte Coddova pravila v relacijskem modelu .

Prednosti relacijskega modela

  • Preprost model: Relacijski model je preprost in enostaven za uporabo v primerjavi z drugimi jeziki.
  • Prilagodljiv: Relacijski model je bolj prilagodljiv kot kateri koli drug prisoten relacijski model.
  • Varno: Relacijski model je varnejši od katerega koli drugega relacijskega modela.
  • Točnost podatkov: Podatki so natančnejši v relacijskem podatkovnem modelu.
  • Celovitost podatkov: V relacijskem modelu je ohranjena celovitost podatkov.
  • Operacije je mogoče enostavno uporabiti: Operacije je bolje izvajati v relacijskem modelu.

Slabosti relacijskega modela

  • Model relacijske baze podatkov ni zelo dober za velike baze podatkov.
  • Včasih postane težko najti relacijo med tabelami.
  • Zaradi kompleksne strukture je odzivni čas na poizvedbe visok.

Značilnosti relacijskega modela

  • Podatki so predstavljeni v vrsticah in stolpcih, imenovanih relacije.
  • Podatki so shranjeni v tabelah z razmerji med njimi, imenovanimi relacijski model.
  • Relacijski model podpira operacije, kot so definicija podatkov, obdelava podatkov in upravljanje transakcij.
  • Vsak stolpec ima različno ime in predstavlja atribute.
  • Vsaka vrstica predstavlja eno samo entiteto.