prikupljenaUredjenaSvaPredavanja FER - Zagreb Baze podataka 2011/2012 2 Sadraj 4. SQL (1.dio) 8. Oblikovanje sheme relacijske baze podataka (3. dio - primjeri) 9. Fizika organizacija podataka 10. Integritet baze podataka Sadraj 13. ER model baze podataka (1. dio) 14. ER model baze podataka (2. dio) 15. ER model baze podataka (3. dio - primjeri) 16. Transakcije i obnova baze podataka u sluaju razrušenja 17. Kontrola istodobnog pristupa 18. Sigurnost baze podataka 20. Literatura FER - Zagreb Baze podataka 2011/2012 5 "Nain na koji prikupljate informacije, upravljate njima i koristite ih, odredit e hoete li pobijediti ili izgubiti." Bill Gates Stvarni svijet Obrada podataka – sveu ilište, knjinica Knjinica • podaci o korisniku knjinice • podaci o knjigama • traenje knjiga i asopisa • posuivanje knjiga Sveuilište • podaci o studentima • podaci o nastavnicima • uspjeh na ispitu • ISVU - Informacijski sustav visokih uilišta RH FER - Zagreb Baze podataka 2011/2012 8 Obrada podataka - bankarstvo otvaranje rauna novane transakcije praenje stanja na raunu praenje kupnji ostvarenih putem kreditnih kartica Obrada podataka - telekomunikacije podaci o pozivima telefonski rauni podaci o mrei podaci o kvarovima FER - Zagreb Baze podataka 2011/2012 10 Obrada podataka - znanost FER - Zagreb Baze podataka 2011/2012 11 Obrada podataka - istraivanje i zaštita okoliša morski sustavi (plimna dinamika, temperatura, slanost, širenje tvari u moru) rezultati mjerenja satelitski podaci raunalne simulacije informatika o okolišu satelitska oceanografija ekološko modeliranje Obrada podataka - medicina podaci o pacijentu povijest bolesti rezultati testova podaci s bolnikih instrumenata i senzora Obrada podataka – sport FER - Zagreb Baze podataka 2011/2012 14 Obrada podataka – putovanja vozni red / red letenja rezervacija karata kupnja karata slobodna i zauzeta mjesta FER - Zagreb Baze podataka 2011/2012 15 Obrada podataka – (elektroni ka) trgovina Trgovina • rauni • koliina prodanih proizvoda • zarada Elektronika trgovina • narudbe i prodaja putem Interneta FER - Zagreb Baze podataka 2011/2012 16 Obrada podataka – portali FER - Zagreb Baze podataka 2011/2012 17 Obrada podataka – društvene mree Velik broj korisnika, konstantna aktivnost Facebook – 60 milijuna upita i 4 mil. promjena u sekundi FER - Zagreb Baze podataka 2011/2012 18 Obrada podataka – potpora odlu ivanju integracija podataka iz razliitih izvora razliiti izvori podataka FER - Zagreb Baze podataka 2011/2012 19 Uvod u baze podataka Organizacijski sustav ORGANIZACIJSKI SUSTAV je sloeni sustav koji sadri tehnike i humane podsustave • poduzee, ustanova, djelatnost, društvena organizacija, tehniki sustav kao npr. telekomunikacijska mrea i sl. • esto se organizacijski sustav naziva i POSLOVNIM SUSTAVOM, iako pojam organizacijski sustav ima nešto šire znaenje. Primjeri organizacijskih sustava: • Knjinica • Sveuilište • Zrana luka FER - Zagreb Baze podataka 2011/2012 21 Informacija, podatak (Information, Data) INFORMACIJA je sadraj koji primatelju opisuje nove injenice. Taj sadraj se materijalizira u obliku PODATAKA koji slue za prikaz informacija u svrhu spremanja, prijenosa i obrade. Podatak je skup simbola (znakova). Informacija je i obraeni podatak koji za primatelja ima karakter novosti, otklanja neizvjesnost i slui kao podloga za odluivanje. • Podatak izvan konteksta nema znaenja podatak: 4.62 FER - Zagreb Baze podataka 2011/2012 22 Informacijski sustav (Information System) The entire infrastructure, organization, personnel, and components for the collection, processing, storage, transmission, display, dissemination, and disposition of information [INFOSEC-99]. FER - Zagreb Baze podataka 2011/2012 23 Informacijski sustav (Information System) Informacijski sustav je dio svakog organizacijskog sustava Svrha mu je prikupljanje, obrada, pohranjivanje i distribucija informacija, koje su potrebne za praenje rada i upravljanje organizacijskim sustavom ili nekim njegovim podsustavom. • Informacijski sustav je aktivni sustav koji moe (ali ne mora) koristiti suvremenu informacijsku tehnologiju • Središnji dio informacijskog sustava je BAZA PODATAKA Informacijski sustav, 1868. Baza podataka (Database) BAZA PODATAKA je skup podataka koji su pohranjeni i organizirani tako da mogu zadovoljiti zahtjeve korisnika. (M. Vetter, 1981.) BAZA PODATAKA je skup meusobno povezanih podataka, pohranjenih zajedno, uz iskljuenje bespotrebne zalihosti (redundancije), koji mogu zadovoljiti razliite primjene. Podaci su pohranjeni na nain neovisan o programima koji ih koriste. Prilikom dodavanja novih podataka, mijenjanja i pretraivanja postojeih podataka primjenjuje se zajedniki i kontrolirani pristup. Podaci su strukturirani tako da slue kao osnova za razvoj buduih primjena. (J. Martin, 1979.). Entitet ( Entity) bilo što, što ima suštinu ili bit i posjeduje znaajke s pomou kojih se moe razluiti od svoje okoline osobe: studenti, radnici, graani, ... • student Horvat Ivan (0036123456) ostala bia • Bijeli bor, pas Lajka objekti: vozila, strojevi, ureaji, ulice, zgrade, mjesta, ... • Eiffelov toranj, cepelin Hindenburg apstraktni pojmovi: boje, predmeti nastavnog programa, ... • predmet Baze podataka u nastavnom programu FER-2 dogaaji (nešto se desilo, dešava se ili se planira da e se desiti) • dana 24.11.2006. odrava se proslava Dana Fakulteta na FER-u povezanost meu objektima, osobama, dogaajima, ... • student Horvat Ivan (0036123456) stanuje u Zagrebu nešto o emu elimo prikupljati i pohranjivati podatke FER - Zagreb Baze podataka 2011/2012 26 Atribut (Attribute) Entitet posjeduje neka SVOJSTVA ili ATRIBUTE koji ga karakteriziraju. • Za Informacijski sustav visokih uilišta (ISVU) vana svojstva studenta Horvat Ivana su: Matini broj studenta (JMBAG) Ime Prezime Datum roenja, ... Izbor svojstava (atributa) koje emo pratiti ovisi o namjeni informacijskog sustava • Horvat Ivan u informacijskom sustavu MUP-a bit e karakteriziran i atributima: Boja kose Boja oiju Otisak prsta, ... FER - Zagreb Baze podataka 2011/2012 27 Skup entiteta (Entity Set) Slini entiteti se svrstavaju u skupove entiteta Slini su oni entiteti kojima se promatraju ista svojstva Svi entiteti koji su lanovi istog skupa entiteta imaju iste atribute "atributi entiteta" ⇔ "atributi skupa entiteta“ • atributi skupa entiteta PREDMET sifPred nazPred ectsBod nastProg • atributi skupa entiteta STUDENT jmbag ime prezime datRod FER - Zagreb Baze podataka 2011/2012 28 USTANOVA Domena i vrijednost atributa (Domain, Attribute Value) Za svaki entitet, atribut poprima vrijednosti iz odreenog skupa vrijednosti koji predstavlja domenu tog atributa • domene atributa za skup entiteta PREDMET sifPred: skup šifara predmeta - cijelih brojeva iz intervala [1,999999] nazPred: skup naziva predmeta - nizova znakova duljine do 80 znakova ectsBod: skup vrijednosti ECTS bodova - realnih brojeva iz intervala [0.5, 30.0] (s jednom znamenkom iza decimalne toke) nastProg: skup oznaka nastavnih programa - nizova znakova duljine do 5 znakova • vrijednosti atributa za entitet Baze podataka (31503) sifPred: 31503 nazPred: Baze podataka ectsBod: 6.0 nastProg: FER-2 FER - Zagreb Baze podataka 2011/2012 30 Skup entiteta - prikaz u obliku tablice sifPred nazPred ectsBod nastProg entiteti atributi Identifikatori entiteta, klju evi Skupove atributa ije vrijednosti jednoznano odreuju entitet u promatranom skupu entiteta (dakle ne postoje dva entiteta s posve istim vrijednostima tih atributa) nazivamo IDENTIFIKATORIMA ili KLJUEVIMA SKUPA ENTITETA. sifPred nazPred ectsBod nastProg Primjer: u skupu entiteta PREDMET prikazanom na slici: • skup atributa { sifPred } jest klju skupa entiteta • skup atributa { nazPred } nije klju skupa entiteta • skup atributa { nazPred, nastProg } jest klju skupa entiteta FER - Zagreb Baze podataka 2011/2012 32 Modeliranje stvarnog svijeta Baza podataka nekog informacijskog sustava predstavlja sliku stvarnog organizacijskog sustava; Stvarni svijet, zbog njegove sloenosti, ne moemo prikazati sa svim detaljima; Stvarni svijet predstavlja se pojednostavnjenim, nadomjesnim modelom; Model stvarnog svijeta predstavlja se uz pomo nekog formalnog sustava; Model podataka je formalni sustav koji koristimo kod modeliranja baza podataka FER - Zagreb Baze podataka 2011/2012 33 Model podataka (Data Model) Model podataka je formalni sustav koji se sastoji od: • skupa objekata - osnovnih elemenata (koncepata) baze podataka • skupa operacija koje se provode nad objektima • skupa integritetskih ograni enja (integrity constraints) implicitno ili eksplicitno definiraju skup konzistentnih stanja podataka, promjena stanja, ili oboje Povijesni razvoj modela podataka: • Hijerarhijski model • Mreni model • Relacijski model • ER model • Objektni model • Objektno-relacijski model FER - Zagreb Baze podataka 2011/2012 34 Relacijski model podataka – objekti elementi skupa objekata u relacijskom modelu podataka su relacije relacija je skup n-torki sifPred nazPred ectsBod nastProg shema relacije obuhvaa naziv relacijske sheme (PREDMET) i skup atributa: ( sifPred, nazPred, ectsBod, nastProg ) n-torke: opisuju pojedinane entitete Relacijski model podataka – operacije sifPred nazPred ectsBod nastProg predmet 31503 Baze podataka 6.0 FER-2 21006 Fizika 1 6.0 FER-2 ostale operacije u relacijskom modelu podataka • unija, razlika, presjek, projekcija, ... FER - Zagreb Baze podataka 2011/2012 36 Relacijski model podataka – integritetska ograni enja pravilo domenskog integriteta u relacijskom modelu podataka: sifPred nazPred ectsBod nastProg predmet domenski integritet: • vrijednost atributa sifPred mora biti iz intervala [1, 999999] • vrijednost atributa ectsBod mora biti iz intervala [0.5, 30.0] • ... ostala integritetska ogranienja u relacijskom modelu podataka: • entitetski, referencijski, ... FER - Zagreb Baze podataka 2011/2012 37 ER model podataka Postrelacijski model Zadrava dobra svojstva relacijskog modela Objekti ER modela su entiteti i njihove meusobne veze DJELAT Arhitektura baze podataka aplikacijski programer aplikacijski programer B Arhitektura baze podataka Arhitektura baze podataka Shema (struktura) baze podataka se opisuje na tri razine apstrakcije: • Na konceptualnoj razini opisuje se KONCEPTUALNA SHEMA • Na unutarnjoj razini opisuje se INTERNA SHEMA • Na vanjskoj razini opisuju se EKSTERNE SHEME Jedna baza podataka ima jednu konceptualnu, jednu internu i (naješe) više eksternih shema Shema baze podataka se relativno rijetko mijenja Sadraj ili instanca baze podataka (skup svih podataka baze podataka u odreenom trenutku) se ESTO mijenja FER - Zagreb Baze podataka 2011/2012 44 Konceptualna shema esto se koristi i naziv LOGIKA SHEMA sadri opis svih entiteta i veza, atributa, domena i integritetska ogranienja konceptualna shema se moe opisati korištenjem modela podataka, npr. relacijskog ili ER modela RAUNKLIJENT prezKlijent mbrKlijent Interna shema opisuje detalje fizike strukture pohrane i metode pristupa podacima: kako su podaci pohranjeni i koje se metode koriste za pristup podacima RAUNKLIJENT prezKlijent mbrKlijent Fizika nezavisnost podataka RAUNKLIJENT prezKlijent mbrKlijent Eksterna shema eksterna shema opisuje "pogled" na dio baze podataka koji je namijenjen specifinoj grupi korisnika osnova za opis eksternih shema je konceptualna shema RAUNKLIJENT prezKlijent mbrKlijent Logi ka nezavisnost podataka izmjena konceptualne sheme ne mora izazvati izmjenu eksternih shema →→→→ izmjena konceptualne sheme ne utjee na korisnike i aplikacijske programe koji ih koriste imeKlijent prezKlijent adrKlijent mbrKlijent imeKlijent prezKlijent mbrKlijent brRac stanjeRac Database Management System - DBMS FER - Zagreb Baze podataka 2011/2012 50 Sustav za upravljanje bazom podataka - SUBP (Database Management System - DBMS) je programski sustav koji omoguava upravljanje podacima u bazi podataka. SUBP se temelji na odabranom modelu podataka. Prema modelu podataka na kojem se temelje, SUBP-ove dijelimo na: • hijerarhijske, • mrene, • relacijske, • objektno-relacijske, FER - Zagreb Baze podataka 2011/2012 51 sakriva od korisnika detalje fizike pohrane podataka osigurava logiku i fiziku nezavisnost podataka omoguuje definiciju i rukovanje podacima • DDL - Data Definition Language • DML - Data Manipulation Language obavlja funkciju zaštite podataka • integritet podataka • pristup podacima - autorizacija, sigurnost • kontrola paralelnog pristupa • obnova u sluaju razrušenja obavlja optimiranje upita FER - Zagreb Baze podataka 2011/2012 52 Jezici baze podataka DDL (Data Definition Language) • omoguava imenovanje i opis entiteta, atributa, veza i pripadnih ogranienja integriteta i pravila sigurnosti • koristi se za definiranje nove sheme baze podataka ili modificiranje postojee • obavljanje DDL operacija rezultira izmjenom sadraja rjenika podataka (metapodataka) u bazi podataka • upitni jezik (query language) ne sasvim korektno, pojam se koristi ne samo za operacije dohvata podataka, ve i za operacije izmjene, brisanja i unosa podataka proceduralni jezici, neproceduralni jezici Zašto koristimo sustave za upravljanje bazama podataka? Zašto ne bismo koristili samo datote ne sustave? FER - Zagreb Baze podataka 2011/2012 54 1. Jednostavan pristup podacima Datoteni sustav - podaci su raspršeni po datotekama koje mogu biti u razliitim formatima. Za dobivanje odgovora na netipina pitanja potrebno je ili dotjerivati stare ili pisati nove programe. Primjer: Zašto SUBP, a ne samo datoteke? Potrebno je nai sve korisnike banke koji ive u podruju s odreenim poštanskim brojem. Pretpostavimo da ne postoji gotovi program koji moe izdvojiti traene korisnike, ali postoji program koji vraa sve korisnike. Dva su mogua rješenja: a) slubenik e iz popisa svih korisnika runo izdvojiti one s odreenim poštanskim brojem; b) trait e se od programera da napiše odgovarajui program. Niti jedno od ova dva rješenja nije zadovoljavajue. Svaki put kad se pojavi nova vrsta upita, opet e se morati ponoviti postupak SUBP omoguuje fleksibilniji dohvat i izmjenu podataka. FER - Zagreb Baze podataka 2011/2012 55 2. Upravljanje zalihostima i nekonzistentnošu Isti podaci mogu biti pohranjeni u više datoteka, što moe voditi ka nekonzistentnosti. Zašto SUBP, a ne samo datoteke? Pretpostavimo da se adrese korisnika bankovnog rauna pohranjuju u dvije datoteke (jedna za tekui, a druga za devizni raun). Nakon što je korisnik A promijenio adresu stanovanja, bankovni slubenik promijenio je podatak o adresi u jednoj datoteci, ali je zaboravio promijeniti adresu u drugoj. Ako se mjeseni izvještaji o stanju rauna šalju na kunu adresu korisnika na temelju adrese pohranjene u drugoj datoteci, korisnik A nee dobiti izvještaj na svoju novu adresu. SUBP omoguuje bolju kontrolu zalihosti od datotenog sustava. FER - Zagreb Baze podataka 2011/2012 56 3. Transakcijska obrada Zašto SUBP, a ne samo datoteke? Treba prebaciti 1000 kuna s rauna A na raun B (to je jedna transakcija). Ako se dogodi hardverska ili softverska pogreška za vrijeme izvoenja programa, mogue je da se 1000 kuna skine s rauna A, ali se ne uspije prebaciti na raun B, što dovodi do nekonzistentnosti u bazi podataka. Prebacivanje se mora obaviti u potpunosti. SUBP obino ima ugraenu podršku za transakcijsku obradu, što je vrlo teško ostvariti u datotenom sustavu. 4 . Sloeni odnosi meu podacima SUBP omoguuje predstavljanje razliitih odnosa meu podacima, definiranje novih odnosa kad se oni pojave te jednostavan dohvat i izmjenu meusobno povezanih podataka FER - Zagreb Baze podataka 2011/2012 57 5. Istovremeni pristup više korisnika SUBP omoguuje veem broju korisnika pristup bazi podataka u isto vrijeme. Pri tome treba osigurati da u sluaju kad više korisnika koji nastoje promijeniti isti podatak, to se ini na kontrolirani nain tako da rezultat izmjene bude toan i jednoznaan. Zašto SUBP, a ne samo datoteke? Pretpostavimo da slubenici dvije turistike agencije nastoje istovremeno rezervirati isto sjedalo u zrakoplovu. SUBP mora osigurati da rezervaciju odreenog sjedala u odreenom trenutku moe obavljati najviše jedan slubenik. U datotenom sustavu je kontrolu istovremenog pristupa daleko tee provesti. FER - Zagreb Baze podataka 2011/2012 58 6. Autorizirani pristup • Kad više korisnika koristi veu bazu podataka, obino nee svim korisnicima biti omoguen pristup svim podacima u bazi. Na primjer, kako su podaci o financijama povjerljivi, samo e se autoriziranim osobama omoguiti pristup tim podacima. • Neki korisnici e moi samo pregledavati podatke, dok e ih drugi moi i pregledavati i mijenjati. • SUBP omoguava odreivanje naina na koji e razliiti korisnici pristupati podacima. • U datotenom sustavu je jednostavno odrediti je li neka datoteka namijenjena za itanje, pisanje ili oboje, no nije jednostavno definirati razliit nain pristupa podacima za razliite korisnike. Zašto SUBP, a ne samo datoteke? FER - Zagreb Baze podataka 2011/2012 59 Uloge osoba u ivotnom ciklusu baze podataka FER - Zagreb Baze podataka 2011/2012 60 Baze podataka - uloge 1. Projektanti baze podataka • razgovaraju s korisnicima da bi saznali njihove zahtjeve • oblikuju bazu podataka prema zahtjevima korisnika definirajui strukturu za pohranu podataka (tj. model baze podataka) 2. Analitiari sustava i programeri aplikacija • Analitiari sustava prikupljaju zahtjeve korisnika (npr. bankovnih slubenika) i pišu specifikacije za razvoj aplikacija za pristup bazi podataka • Programeri na temelju tih specifikacija izrauju programe te ih testiraju, dokumentiraju i odravaju; moraju biti upoznati sa svojstvima i mogunostima SUBP-a FER - Zagreb Baze podataka 2011/2012 61 Baze podataka - uloge 3. Administratori baze podataka • instaliraju i nadograuju SUBP • odgovorni su za autorizaciju pristupa bazi podataka • organiziraju, nadziru i optimiziraju korištenje baze 4. Korisnici • Pristupaju bazi tako da postavljaju upite, mijenjaju podatke i izrauju izvještaje Razlikujemo nekoliko skupina korisnika: • korisnici koji povremeno pristupaju bazi koristei upitni jezik • korisnici koji esto koriste bazu postavljajui standardne upite i radei standardne promjene koristei programirana suelja (npr. slubenici u banci, turistikim agencijama...) • sofisticirani korisnici koji su dobro upoznati s bazom podataka i koriste je na sloeniji nain (npr. inenjeri, znanstvenici, poslovni analitiari) 2. Relacijski model podataka Relacijski model podataka E. F. Codd: "A Relational Model of Data for Large Shared Data Banks", Comm. ACM 13, No. 6, June 1970. Ciljevi relacijskog modela podataka: • postaviti temelje za rješavanje problema semantike, konzistentnosti i redundancije podataka (normalizacija ) • omoguiti razvoj DML jezika temeljenih na operacijama nad skupovima Dr. Edgar Frank Codd (1923-2003) FER - Zagreb Baze podataka 2011/2012 64 Relacijski model podataka Vani projekti u ranim 70-tim: jezik ISBL temeljen na relacijskoj algebri, jezici SQUARE i SEQUEL (DBMS System R) temeljeni na relacijskoj algebri i predikatnom raunu te Query-By-Example temeljen na predikatnom raunu nad domenama • razvojem prototipova dokazuje se praktina upotrebljivost relacijskog modela • postavljaju se temelji za rješavanje problema implementacije u podrujima upravljanja transakcijama, paralelnog pristupa, obnove, optimizacije upita, sigurnosti i konzistentnosti podataka Projekti su potaknuli: • razvoj strukturiranog upitnog jezika (SQL) • razvoj komercijalnih relacijskih sustava za upravljanje bazama podataka (RDBMS) Ingres, Oracle, IBM DB2, Informix, ... danas: u upotrebi je nekoliko stotina razliitih RDBMS sustava FER - Zagreb Baze podataka 2011/2012 65 Relacijski model podataka objekti u relacijskom modelu podataka su RELACIJE pbr nazMjesto sifZup 42000 Varadin 7 51000 Rijeka 2 52100 Pula 4 51300 Delnice 2 42230 Ludbreg 7 sifZup nazZup 2 Primorsko-goranska 7 Varadinska 4 Istarska mjesto zupanija nad istom domenom moe biti definiran jedan ili više atributa • n-torka (tuple) je redak relacije FER - Zagreb Baze podataka 2011/2012 66 Matemati ka relacija Relacija R definirana nad skupovima D1, D2, ..., Dn je podskup Kartezijevog produkta skupova D1, D2, ..., Dn R ⊆⊆⊆⊆ D1 ×××× D2 ×××× ... ×××× Dn 1987 1989 D3 (Iva, Novak, 1987) (Iva, Novak, 1989) (Iva, Kolar, 1987) (Iva, Kolar, 1989) (Hrvoje, Novak, 1987) (Hrvoje, Novak, 1989) (Hrvoje, Kolar, 1987) (Hrvoje, Kolar, 1989) (Ivan, Novak, 1987) (Ivan, Novak, 1989) (Ivan, Kolar, 1987) (Ivan, Kolar, 1989) D1 ×××× D2 ×××× D3 (Ivan, Kolar, 1989) Relacijska shema (formalna definicija) Neka su zadani atributi A1, A2, ..., An. Relacijska shema R (intenzija) je imenovani skup atributa R = { A1, A2, ..., An } radi pojednostavljenja, koristit e se i sljedea notacija: R = A1 A2 ... An uoite: poredak atributa u shemi relacije je nebitan R = { A1, A2, A3 } ≡ { A3, A1, A2 } Primjer: relacijska shema MJESTO MJESTO = { pbr, nazMjesto, sifZup } FER - Zagreb Baze podataka 2011/2012 68 Relacijska shema (primjer) identina je relacijskoj shemi MJESTO = { sifZup, pbr, nazMjesto } FER - Zagreb Baze podataka 2011/2012 69 n-torka (formalna definicija) Neka je R = { A1, A2, ..., An } relacijska shema; neka su D1, D2, ..., Dn domene atributa A1, A2, ..., An; n-torka t definirana na relacijskoj shemi R je skup parova oblika atribut :vrijednostAtributa t = { A1:v1, A2:v2, ..., An:vn }, pri emu je v1 ∈ D1, v2 ∈ D2, ..., vn ∈ Dn Uoite: poredak elemenata n-torke nije bitan { A1:v1, A2:v2, A3:v3 } ≡ { A3:v3, A1:v1, A2:v2 } Ponekad e se koristiti pojednostavljena notacija: pretpostavi li se da poredak vrijednosti atributa odgovara "poretku atributa" u relacijskoj shemi, n-torka se moe prikazati na sljedei nain: t = <<<< v1, v2, ..., vn >>>> n-torka (primjer) Zadana je relacijska shema OSOBA = { matBr, ime, prez }, pri emu su domene atributa: dom (matBr) = {1234, 1235, 1236, 1237 } dom (ime) = { Iva, Hrvoje, Ivan } dom (prez) = { Novak, Kolar } t1 = { matBr:1234, ime:Iva, prez:Novak } t2 = { matBr:1236, ime:Hrvoje, prez:Novak } t3 = { matBr:1237, ime:Ivan, prez:Kolar } n-torka t1 se jednako ispravno moe napisati na sljedei nain (poredak elemenata n-torke je nebitan) t1 = { ime:Iva, prez:Novak, matBr:1234 } Relacija (formalna definicija) Neka je R = { A1, A2, ..., An } relacijska shema; neka su D1,…