210 likes | 406 Views
Relacioni rac un. - Baze podataka -. prof. dr Milorad Banjanin. Milos Pljevaljcic 309/07. opisan, neproceduralan jezik. Relacioni rac un. logicki ekvivalent relacione algebre ako se posmatra deo relacionog modela podataka za obradu podataka. zasnovan na predikatskom racunu.
E N D
Relacioni racun -Baze podataka- prof. dr Milorad Banjanin Milos Pljevaljcic 309/07
opisan, neproceduralan jezik Relacioni racun logicki ekvivalent relacione algebre ako se posmatra deo relacionog modela podataka za obradu podataka zasnovan na predikatskom racunu
Relacioni racun Relacioni racun n-torki Relacioni racun domena Predikatski racun prvog reda u kome promenljive uzimaju vrednosti iz nekih domena atributa relacija date baze podataka Predikatski račun prvog reda (formalna matematicka teorija) u kome promenljive uzimaju vrednosti n-torki relacija date baze podataka
PREDIKATSKI RACUNPRVOG REDA je matematicka teorija ciji su objekti formule koje predstavljaju predikate (predikat)je istinitosno vrednosna funkcija sa argumentima Definisu se atomske formule i pravila (sintaksa) izvodjenja slozenijih formula
RELACIONI RACUN N-TORKI Promenljive su n-torke relacija Atomske formule se definisu nad atributima n-torki Pravila izvodjenja su standardna pravila predikatskog r.
OBJEKTNI RACUN Promenljive su objekti klasa Atomske formule se definisu nad atributima i operacijama objekata Pravila izvodjenja su standardna pravila Predikatskog racuna prvog reda
RELACIONI RACUN N-TORKI promjenljiva X uzima kao svoju vrijednost n-torku relacije R x : R x.A Θ y.B x.Aje vrijednost atributa A relacije R1 za ntorku X y.Bje vrijednost atributa B relacije R2 iz koje promjenljiva y uzima n-torke A i Bdefinisani nad istim domenom Θoperacija poredjenja definisana nad domenom
Opsti iskaz relacionog racuna R1, R2, ...,Rn-relacije Prikazi vrednosti atributa A relacije R1, atributa B relacije R2, ... i atribut C relacije Rn, za one n-torke koje zadovoljavaju uslov definisan formulom F Uslov u vidu formule t: R1, u: R2, . . . , v: Rn t.A, u.B, . . . , v.CWHEREF A, B, ..., C-atributi
PRIMJER • STUDENT(BI,IME, STAROST,ŠSMER) • PRIJAVA(BI,ŠP,OCENA) • PREDMET(ŠP, NAZIP,BRČAS) • SMER(ŠSMER,NAZIVS) RELACIONA BAZA SA TABELAMA (ZELENA BOJA) I ATRIBUTIMA (CRVENA BOJA)
PRIMJER x: STUDENT x.BI, x.IME WHERE x.STAROST > 20; = “Prikaži brojeve indeksa i imena studenata KOJI SU STARIJI OD 20 GODINA”
PRIMJER x: STUDENT, y: SMER x. IMEWHERE ∃ y(y.ŠSMER = x. ŠSMER AND y.NAZIVS = 'InfSist'); = “Prikazi imena studenata koji studiraju smer ‘Informacioni sistemi’”
INTERPRETACIJA SQL-a PREKO RELACIONE ALGEBREI RELACIONOG RAČUNA projekcija po navedenim atributima, selekcije po datom uslovu, Dekartovog proizvoda potrebnih tabela atributi D. proizvod [R1.A1, R2.A2, ..., Rm.An] ([Θ] (R1 x R2 x ... x Rm)) projekcija restrikcija
INTERPRETACIJA SQL-a PREKO RELACIONE ALGEBREI RELACIONOG RAČUNA SELECTR1.A1, R2.A2, ..., Rm.An FROMR1,R2,.., Rm WHEREΘ; Ekvivalencija sa relacionom algebrom SELECT je ekvivalentno operaciji FROM odgovara operacijiDekartovog proizvoda WHERE odgovara operaciji Restrikcije po uslovu Θ
IMPLEMENTACIJA OBJEKTNOG RACUNA - QUEL RANGE OF x IS STUDENT RANGE OF y IS STUDENT RETRIEVE(x.IME, y.IME, x.STAROST) WHEREx.STAROST = y.STAROST RANGE OF x IS STUDENT RANGE OF y IS SMER RETRIEVE (x. BI, x.IME ) WHEREx.ŠIFSMER = y.ŠIFSMER AND y.NAZIVSMER = 'Infsist'; Prikaži parove imena studenata iste starosti Prikazati brojeve indeksa i imena radnika koji studiraju smer "Informacioni sistemi". Najpoznatiji upitni jezik koji predstavlja direktnu implementaciju relacionog računa n-torki je QUEL (Query Language) PRIMJERI IMPLEMENTACIJE
RELACIONI RACUN DOMENA promenljive uzimaju vrednosti iz nekih domena atributa Definise se jos I ‘uslov pripadnosti’ R(uslov, uslov, ...) Uslov ima oblik A:v A-atribut V-promjenljiva ili konstanta
Uslov pripadnosti STUDENT (BI = '152/97' , ŠIFSMER =01 ) Uslov pripadnosti se sracunava u TRUE ako postoji n-torka urelaciji R koja ima zadate vrednosti navedenih atributa
Opsti izraz relacionog racuna domena je: x, y, ..., z WHEREF x, ..., z -promenljive F -je formula koja ukljucuje i uslov pripadnosti(clanstva)
Primjeri Prikazi imena studenata sa smera "InfSist”. Prikazi brojeve indeksa i imena studenata starijih od 20 godina x WHERE ∃ y ( (IME: x, ŠIFSMER: y) ANDSMER (ŠIFSMER: y, NAZIVS:'InfSis’)) x, y WHERE ∃ z > 25 AND STUDENT (BRIND: x, IME:y, STAROST: z)
QBE (Query By Example) preko nje se direktno, u skeletu tabele predstavljene na ekranu, zadaje "primer odgovora" koji korisnik želi. Otuda i ime Query By Example (upit na osnovu primera). upitni jezik implementacija relacionog racuna domena "dvodimenzionalna" sintaksa
Algebra,racun i SQL Logicki ekvivalentni Relacioni racun Relaciona algebra + SQL