Citat:
Da li se rješavanje nekog zadatka u accessu može gledati tako da se odredi "glavna tablica" problema pa da se na nju nadovezuju ostale tablice
U bazi podataka, sve su tablice nekako povezane. Ako ima tablica koje vise u vazduhu, onda nesto nije u redu (uglavnom, ima kontrolisanih izuzetaka).
Najprostije receno, posmatraj svaku tablicu kao jednu recenicu koja opisuje neku stvar, pojavu ili dogadjaj iz realnog zivota.
Isto tako, kad se tablice 'povezu', te veze, to su isto tako recenice koje opisuju odnose izmedju stvari (tablica).
Do sheme tablica se dolazi obrnutim putem - prvo se iskazu recenice koje opsuju realn zivot, pa se te recenice pretvore u tablice.
STvari su u zivotu na neki nacin povezane, pa se i te recenice mogu iskazati, i onda nacrtati- tako sto se povezu tablice.
Na primer, posmatrani slucaj se moze opisati, za pocetak, jednom recenicom: "Neko organizuje izlozbe ptica" To je najkrace sta se o ovom zadatku moze reci. U toj recenici imas dve imenice ('izlozbe','ptice'), jednu zamenicu ('neko') i jedan glagol ('organizovati'). Imenice i zamenice postaju 'tabele' a glagol postaje 'veza'. U shemi ce biti vise veza nego glagola, jer smo recenicu iskazali na najkraci moguci nacin.
Mozemo da kazemo i ovako:
"Organizatori
organizuje izlozbe na kojim
ucestvuju uzgajivaci koji
gaje ptice".
Iz ovoga slede tabele 'Organizatori', 'Izlozbe','Odgajivaci','Ptice'. Njihove veze su glagoli koje sam napiao
kosim slovima.
Ako pogledas Zoranovu shemu, vodeces da su sve ova tabele tamo, uz jos neke druge. Ove koje sam nabrojao su 'glavne' tabele. Ima jos jedna glavna tabela, Prijave. Sve ostale su pomocne - one sluze da se obezbedi izvor podataka za glavne tabele.
Kako je i 'Prijava' glavna tabela? Zoran je pretpostavio da recenica koja opisuje slucaj glasi:
"Organizatori
organizuje izlozbe na koje uzgajivaci koji
gaje ptice
podnose prijave".
Ako je Zoranova pretpostavka tacna, evo glavnih tabela: Organizatori, Izlozbe, uzgajivaci, ptice, prijave. Zoran je takodje napravio neke pretpostavke o vezama. Uspeh sheme baze zavisis od dve stvari;
1) koliko su tacne pocetne pretpostavke
2) koliko su dobro pretpostavke pretvorene u shemu
Stavka 2) dolazi iz Zoranovog iskustva, i tu nema greske, a stvaka 1) dolazi iz razgovora koji Zoran obavlja sa nekim ko poznaje stvari u vezi sa izlozbama ptica. Ceo posao je iterativan. Recimo, ti sad mozes da kazes - mene ne interesuju prijave, mene intersuju samo ptice. U tom slucaju, OK, napravili smo gresku, jer smo na osnovu prilozenih dokumenta pravili pretpostavke. Shema bi se u tom slucaju promenila, uz dokumentovanje izmena. Ovo je samo opsta slika procesa koji se odvija dok pokusavamo da smislimo kakao baza treba da izgleda. U profesionalnoj praksi, proces je formalizovan do razlicitog stepena, svako to radi na malkice drugaciji nacin, ali je sustina ista.
Znaci, Zoranova pitanja treba tako da shvatis - kakao bi opisao u nekoliko recenica odnose medju ucesnicima u procesu zvanom 'izlozba ptica'' To ce dati pocetni kostur baze, verovatno vrlo slican onome sto je Zoran postavio.
Posto je i svaka tabela recenica, i te su nam recenice potrebne. Recimo, tabele Ptice. Mogu da kazem: 'Ptica, identifikovana poljen[PticaID] je pola [Pol] rase [Rasa] i ime joj je [Ime] i ima broj prstena [BrojPrstena], i ima sliku [Slika]' Ono u zgardama mozes da shvatis kao promenjlive, za svaku razlicitu pticu promenljive ce imati druge vrednosti.
veza tabele 'Rasa' i 'Ptica' se iskazuje recenicom 'Rasa ptice moze biti jedna od unapred definisanih rasa' ili '[Rasa] dodeljena ptici mora biti prethodno definisana u tabeli 'Rasa''
Da bi shvatio, pokusaj za vesbu ovo:
1) pogledaj tabele koje je nacrtao Zoran. Za svaku glavnu tabelu, sastavi recenicu sa promenljivama i vidi da li ta recenica ima amislia i d ali je kompletna.
2) pogledaj veze izmedju glavnih tabela i pokusaj da iskazes recenicu koja tu vezu iskazuje.
Na primer, uzmi tabele 'Uzgajatelj', 'Prijava', 'Izlozba' pvezane su recenicom 'Uzgajatelj
zeli da ucestvuje na izlozbi i zato
podnosiprijavu ' Kako s euvode ptice u igru? Recenicom 'Za prijavu se vezu 'prijavljen ptice' koje moraju biti iz skupa ptica' Zoran je za 'prijavljene ptica' upotrebio ime 'PrijavaPtica'
Dosta price, pokusaj da gledas u sliku i da sliku nazad prevedes u recenice. Ako recenice imaju smisla i kompletne su, ond aje shema dobra. Ako ne, treba jos jedna iteracija. Zoran te upucuje na formalne metode za dolazenje do valjane shema, ali moras prvo da pokusas da razumes o cemu se u stvari radi.