2. Füüsiline disain
2. Füüsiline disain
2. Füüsiline disain
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
TTÜ: Andmebaasi füüsiline <strong>disain</strong> (2012)<br />
© Erki Eessaar<br />
MS Accessis (2007) saab tabeleid luua kasutades graafilist <strong>disain</strong>erit, või<br />
käivitades ükshaaval tabelite loomise lauseid. Sisse-ehitatud võimalust mitme<br />
tabeli loomise lause korraga loomiseks ei ole.<br />
Erinevates andmebaasisüsteemides on lubatud andmebaasiobjekti<br />
identifikaatori maksimaalne pikkus erinev!<br />
• SQL standard määrab identifikaatori maksimaalseks pikkuseks 128 märki.<br />
• MS Accessis on identifikaatori maksimaalne pikkus 64 märki.<br />
• PostgreSQLis on identifikaatori maksimaalne pikkus vaikimisi kuni 63<br />
märki, aga seda saab muuta NAMEDATALEN parameetri väärtuse<br />
muutmise abil.<br />
• Oracles on identifikaatori maksimaalne pikkus üldjuhul 30 märki. Kui<br />
soovida anda kitsendustele sisukaid nimesid, siis 30 märki võib olla liiga<br />
vähe.<br />
Näide: Andmebaasisüsteemis MS Access (2000) ei saa CREATE TABLE<br />
lauses määrata DEFAULT väärtust. Seda saab teha graafilise kasutajaliidese<br />
(Table Designer) abil. Samuti ei saa CREATE ja ALTER TABLE lausetes<br />
määrata CHECK kitsendust ja välisvõtmega seotud kompenseerivaid<br />
tegevusi. Kuid tabeli <strong>disain</strong>ivaates graafilise kasutajaliidese kaudu saab<br />
tabeliga siduda valideerimisreegleid (ingl. k. validation rule) ja määrata<br />
välisvõtmega seotud kompenseeriva tegevuse tüübiks CASCADE.<br />
MS Access (2003) andmebaasisüsteemis saab eelmainitud tegevusi teha ka<br />
SQL lausete abil, kuid selleks peab andmebaasi kasutaja märkima: Tools=><br />
Options=> Tables/Queries=> SQL Server Compatible Syntax (ANSI 92).<br />
MS Access (2007) andmebaasisüsteemis saab eelmainitud tegevusi teha ka<br />
SQL lausete abil, kuid selleks peab andmebaasi kasutaja märkima: Office<br />
Button => Access Options => Object Designers => Query design => SQL<br />
Server Compatible Syntax (ANSI 92).<br />
MS Access (2010) andmebaasisüsteemis saab eelmainitud tegevusi samuti<br />
teha ka SQL lausete abil, kuid selleks peab andmebaasi kasutaja märkima:<br />
File => Options => Object Designers => Query design => SQL Server<br />
Compatible Syntax (ANSI 92).<br />
<strong>2.</strong>1.2 Tuletatud väärtuste esitamise <strong>disain</strong><br />
Näide: Tellimus koosneb tellimuse ridadest. Iga tellimuse rida on seotud<br />
kaubaga millel on hind. Tellimuse real määratakse kauba kogus ja<br />
arvutatakse rea summa. Tellimuse kui tervikule kehtib juurdehindlusi<br />
(käibemaks, transpordikulu) ja allahindlusi (soodustused). Kui kogu see info<br />
on andmebaasis olemas, siis saaks tellimuse summa vajadusel päringuga<br />
arvutada. Kas hoida tellimuse summat ka eraldi veerus tabelis Tellimus?<br />
Vastandlikud kaalutlused.<br />
Tuletatud väärtuse kasutamine.<br />
• Tuletatud väärtuste hoidmiseks kulub andmebaasis lisaruumi.<br />
5