Relacijski model podataka u DBMS-u: Concepts & Primjer
⚡ Pametni sažetak
Relacijski model predstavlja bazu podataka kao skup relacija, gdje je svaka relacija tablica redaka i stupaca. Definira ključne koncepte, ograničenja integriteta i operacije ažuriranja koje održavaju relacijske podatke konzistentnima i jednostavnima za upite.
Što je relacijski model?
Relacijski model (RM) predstavlja bazu podataka kao skup relacija. Relacija nije ništa drugo nego tablica vrijednosti. Svaki redak u tablici predstavlja zbirku povezanih podataka. Ovi redovi u tablici označavaju entitet ili odnos iz stvarnog svijeta.
Naziv tablice i nazivi stupaca pomažu u tumačenju značenja vrijednosti u svakom retku. Podaci su predstavljeni kao skup relacija. U relacijskom modelu podaci se pohranjuju kao tablice. Međutim, fizička pohrana podataka neovisna je o načinu na koji su podaci logički organizirani.
Model je predložio EF Codd 1970. godine i ostaje temelj gotovo svake glavne baze podataka koja se danas koristi. Neki popularni relacijski sustavi za upravljanje bazama podataka su:
- DB2 i Informix dinamički poslužitelj – IBM
- Oracle i RDB – Oracle
- SQL Server i Access – Microsoft
Relacijski model Concepts u DBMS-u
- Atribut: Svaki stupac u tablici. Atributi su svojstva koja definiraju relaciju, npr. Student_Rollno, IME itd.
- tablice: U relacijskom modelu, relacije se spremaju u formatu tablice. Pohranjuje se zajedno sa svojim entitetima. Tablica ima dva svojstva, retke i stupce. Redci predstavljaju zapise, a stupci atribute.
- Tuple: To nije ništa drugo nego jedan redak tablice koji sadrži jedan zapis.
- Shema odnosa: Shema relacije predstavlja ime relacije sa svojim atributima.
- Stupanj: Ukupan broj atributa u relaciji naziva se stupanj relacije.
- Kardinalnost: Ukupan broj redaka prisutnih u tablici.
- Stupac: Stupac predstavlja skup vrijednosti za određeni atribut.
- Primjer relacije: Instanca relacije je konačan skup tupleova u RDBMS sustavu. Instance relacije nikada nemaju duplicirane tupleove.
- Ključ relacije: Svaki red ima jedan, dva ili više atributa, što se naziva ključ relacije.
- Domena atributa: Svaki atribut ima neku unaprijed definiranu vrijednost i opseg, što je poznato kao domena atributa.
S obzirom na vokabular, sljedeća briga je zadržatiping podaci u tim relacijama valjani, što je zadatak ograničenja integriteta.
Relacijski Integrity ograničenja
Ograničenja relacijskog integriteta u DBMS-u odnose se na uvjete koji moraju biti prisutni za valjanu relaciju. Ta relacijska ograničenja izvedena su iz pravila u mini-svijetu koji baza podataka predstavlja.
Postoji mnogo vrsta ograničenja integriteta. Ograničenja na sustavu upravljanja relacijskom bazom podataka uglavnom se dijele u tri glavne kategorije:
- Ograničenja domene
- Ključna ograničenja
- Referentni Integrity ograničenja
Ograničenja domene
Ograničenja domene mogu se prekršiti ako se vrijednost atributa ne pojavljuje u odgovarajućoj domeni ili ako nije odgovarajućeg tipa podataka.
Ograničenja domene određuju da unutar svake n-torke vrijednost svakog atributa mora biti atomska i izvučena iz ispravne domene. Domene su određene kao tipovi podataka, koji uključuju standardne tipove kao što su cijeli brojevi, realni brojevi, znakovi, logičke vrijednosti i nizovi promjenjive duljine.
Primjer:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
Prikazani primjer pokazuje stvaranje ograničenja domene tako da CustomerName nije NULL.
Ključna ograničenja
Atribut koji može jedinstveno identificirati torku u relaciji naziva se ključ tablice. Vrijednost atributa za različite torke u relaciji mora biti jedinstvena.
Primjer:
U danoj tablici, CustomerID je ključni atribut tablice Customer. Najvjerojatnije će imati jedan ključ za jednog kupca; CustomerID = 1 je samo za CustomerName “GooglePotpuni opis različitih vrsta ključeva nalazi se u vodiču za DBMS ključevi.
| ID kupca | Ime kupca | Status |
|---|---|---|
| 1 | Aktivan | |
| 2 | Amazon | Aktivan |
| 3 | jabuka | neaktivan |
Referentni Integrity ograničenja
Ograničenja referencijalnog integriteta u DBMS-u temelje se na konceptu stranih ključeva. Strani ključ je važan atribut relacije na koji se treba pozivati u drugim relacijama. Ograničenje referencijalnog integriteta javlja se kada se relacija poziva na ključni atribut različite ili iste relacije. Taj ključni element mora postojati u referenciranoj tablici.
Primjer:
U gornjem primjeru imamo dva odnosa, Kupac i Billing..
Ntorka za CustomerID = 1 se u relaciji referencira dva puta. Billing. Dakle, znamo ImeKupca “Google"ima iznos naplate od 300 USD."
Operacije u relacijskom modelu
Na relacijskom modelu baze podataka izvode se četiri osnovne operacije ažuriranja: umetanje, ažuriranje, brisanje i odabir.
- Naredba Insert se koristi za umetanje podataka u relaciju.
- Delete se koristi za brisanje torki iz tablice.
- Modify vam omogućuje promjenu vrijednosti nekih atributa u postojećim torkama.
- Odaberite vam omogućuje odabir određenog raspona podataka.
Kad god se primijeni jedna od ovih operacija, ograničenja integriteta navedena na shemi relacijske baze podataka nikada ne smiju biti prekršena.
umetak OperaANJE
Operacija umetanja daje vrijednosti atributa za novu nabornu skupinu koja se treba umetnuti u relaciju.
Nadopune OperaANJE
U donjoj tablici relacija možete vidjeti da je CustomerName 'Apple' ažuriran iz Neaktivnog u Aktivno.
Izbrisati OperaANJE
Da biste odredili brisanje, uvjet na atribute relacije odabire torku koja se briše.
U gornjem primjeru, CustomerName “Apple” je izbrisan iz tablice.
Operacija brisanja mogla bi narušiti referencijalni integritet ako se na izbrisani tuple referenciraju strani ključevi iz drugih tuplea u istom baza podataka.
odabrati OperaANJE
U gornjem primjeru, NazivKupca "Amazon"Odabrano je.
Relacijski model u odnosu na hijerarhijski i mrežni model
Relacijski model zamijenio je dva ranija pristupa, a kontrast objašnjava zašto je postao dominantan. Tablica u nastavku uspoređuje ta tri pristupa.
| Aspekt | Relacijski model | Hijerarhijski model | Model mreže |
|---|---|---|---|
| Struktura | Tablice (relacije) | Drvo, od roditelja do djeteta | Grafikon, mnogo prema mnogo |
| Pristup podacima | Deklarativno, po vrijednosti | Navigacijski, po putanji | Navigacijski, pomoću pokazivača |
| Odnosi | Strani ključevi | Veze roditelj-dijete | Skupovi i pokazivači |
| Jezik upita | SQL | Proceduralni kod | Proceduralni kod |
| Fleksibilnost | visok | Nizak | Srednji |
Budući da relacijski model adresira podatke prema vrijednosti, a ne prema fizičkim vezama, jezik visoke razine poput SQL može izraziti upit bez znanja kako su podaci pohranjeni.
Najbolje prakse za stvaranje relacijskog modela
- Podaci moraju biti predstavljeni kao skup relacija.
- Svaki odnos treba biti jasno prikazan u tablici.
- Redci trebaju sadržavati podatke o instancama entiteta.
- Kolumne moraju sadržavati podatke o atributima entiteta.
- Ćelije tablice trebaju sadržavati jednu vrijednost.
- Svakom stupcu treba dati jedinstveno ime.
- Niti dva reda ne mogu biti identična.
- Vrijednosti atributa trebaju biti iz iste domene.
Prednosti modela relacijske baze podataka
- Jednostavnost: Relacijski model podataka u DBMS-u je jednostavniji od hijerarhijskih i mrežnih modela.
- Strukturna neovisnost: Relacijska baza podataka bavi se samo podacima, a ne strukturom, što može poboljšati performanse modela.
- Jednostavan za korištenje: Relacijski model je jednostavan za korištenje, jer su tablice koje se sastoje od redaka i stupaca prirodne i jednostavne za razumijevanje.
- Mogućnost upita: Omogućuje jeziku upita visoke razine poput SQL-a da izbjegne složenu navigaciju bazom podataka.
- Neovisnost podataka: Struktura relacijske baze podataka može se mijenjati bez potrebe za promjenom bilo koje aplikacije.
- Prilagodljivo: S obzirom na broj zapisa ili redaka i broj polja, baza podataka može se proširiti kako bi se poboljšala njezina upotrebljivost.
Nedostaci relacijskog modela
- Malo relacijskih baza podataka ima ograničenja duljine polja koja se ne mogu prekoračiti.
- Relacijske baze podataka ponekad mogu postati složene kako količina podataka raste, a odnosi između dijelova podataka postaju kompliciraniji.
- Složeni relacijski sustavi baza podataka mogu dovesti do izoliranih baza podataka gdje se informacije ne mogu dijeliti između sustava.







