17.03.2015 Views

2. Füüsiline disain

2. Füüsiline disain

2. Füüsiline disain

SHOW MORE
SHOW LESS

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

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

Saved successfully!

Ooh no, something went wrong!