10.07.2015 Views

Andmebaasid I - Teema nr. 3 - Tallinna Tehnikaülikool

Andmebaasid I - Teema nr. 3 - Tallinna Tehnikaülikool

Andmebaasid I - Teema nr. 3 - Tallinna Tehnikaülikool

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

TTÜ: Relatsioonialgebra. Sissejuhatus SQL keelde (2012) © Erki EessaarNagu näete on tuletatud muutuja (vaade) Korge_palk defineeritudrelatsioonilise muutuja Tootaja kaudu. Võrdluseks, Tootaja on baasmuutuja,mis ei ole defineeritud teiste muutjate kaudu ning mille loomise lause onTutorial D keeles:VAR Tootaja BASE RELATION {tootaja_kood CHAR, perenimi CHAR,aadress CHAR, registr_kpv DATE, palk INTEGER, o_<strong>nr</strong> INTEGER} KEY{tootaja_kood};Kui kasutaja soovib teada vaate väärtust, siis leiab andmebaasisüsteem vaatespetsifikatsioonis esitatud relatsioonilise avaldise "(Tootaja WHEREpalk>1500) {tootaja_kood, perenimi, palk}" väärtuse. Selles avaldisespöördutakse piirangu ja projektsiooni arvutamise operaatorite poole.Järgnev joonis esitab halliga relatsioonis Tootaja asuvad andmed, mis onnähtavad vaate Korge_palk kasutajale. Alamosa b) esitab vaate Korge_palkvõimaliku väärtuse näite.a)tootaja_kood perenimi aadress registr_kpv palk o_<strong>nr</strong>1 Jõgi Tallinn,Pikk 342 Mets Paide,Roheline 73 Kask Tartu,Tähe 124 Triik Tartu,Kase 12-4411.11.2001 1400 112.04.2001 1500 210.05.2001 1600 110.03.2001 1800 3b)tootaja_kood perenimi palk3 Kask 16004 Triik 1800Relatsioonilises andmebaasis kehtib baasmuutujate ja vaadete eristamatuseprintsiip. Selle printsiibi kohaselt ei ole vaja teha meelevaldset ning tarbetutvahet baasmuutujate ja vaadete vahel. Andmebaasi kasutaja jaoks peaksidbaasmuutujad ja vaated paistma ning tunduma ühesugused. Kasutaja ei peatingimata teadma kas ta kasutab parajasti baasmuutujat või vaadet. Seeomakorda tähendab, et baasmuutujate ja vaadete käitumine relatsioonilisteoperatsioonide kontekstis peab olema ühesugune. Sellest tulenevalt peaksläbi kõigi vaadete saama muuta andmebaasis olevaid andmeid (eeldusel, etmuudatus ei lähe vastuollu andmebaasis jõustatud kitsendustega). Kuiandmebaasi kasutaja muudab vaate väärtust, siis andmebaasisüsteem peabmuutma selle vaate aluseks olevate baasmuutujate väärtusi.30

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!