ecdl modul 5 - baza podataka v1.2 demo.pdf

20

Upload: dragan-milosevic

Post on 08-Aug-2015

159 views

Category:

Documents


10 download

TRANSCRIPT

Page 1: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf
Page 2: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL® priručnik

Modul 5: Baze podataka

Microsoft Access

Lanaco Edukacija

Banja Luka, 2011.

v.1.2.

Copyright©

2010

Umnožavanje, reprodukcija ili na drugi način korištenje i objavljivanje tekstova iz ovog priručnika, bez naknade i

bez dozvole autora ili izdavača, kažnjivi su po članu 120. Zakona o autorskom pravu i srodnim pravima

(“Službeni glasnik BiH”, broj 7/02).

Page 3: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf
Page 4: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

2

Sadržaj

5 Baze podataka ............................................................................................................................................ 6

5.1 Uvod u baze podataka ....................................................................................................................... 6

5.1.1 Osnovni koncepti ....................................................................................................................... 6

5.1.1.1 Šta je baza podataka? ............................................................................................................ 6

5.1.1.2 Razlike između podataka i informacija .................................................................................. 6

5.1.1.3 Organizacija (struktura) baze podataka ................................................................................. 6

5.1.1.4 Primjena baza podataka......................................................................................................... 7

5.1.1.5 Organizacija baze podataka ................................................................................................... 8

5.1.1.6 Princip kreiranja tabela .......................................................................................................... 8

5.1.1.7 Princip definisanja polja tabele .............................................................................................. 9

5.1.1.8 Princip definisanja sadržaja polja tabele ................................................................................ 9

5.1.1.9 Karakteristike polja: veličina polja, format, standardna vrijednost ..................................... 11

5.1.1.10 Šta je primarni ključ (Primary Key)? ................................................................................. 12

5.1.1.11 Šta je indeks i kako on omogućava brži pristup podacima? ............................................ 13

5.1.1.12 Veze između tabela (Relationships) ................................................................................. 14

5.1.1.13 Razlog uvođenja relacionih tabela ................................................................................... 14

5.1.1.14 Veza između tabela - Jedinstveno polje ........................................................................... 14

5.1.1.15 Održavanje integriteta veza između tabela ..................................................................... 14

5.1.2 Rad sa bazom podataka ........................................................................................................... 16

5.1.2.1 Profesionalni dizajn baze podataka ..................................................................................... 16

5.1.2.2 Unos i održavanje podataka - korisnici ................................................................................ 16

5.1.2.3 Pristup podacima za određenog korisnika ........................................................................... 17

5.1.2.4 Vraćanje podataka prilikom kraha baze i pojavljivanja grešaka u bazi ................................ 18

5.2 Korištenje aplikacije MS Access ....................................................................................................... 19

5.2.1 Rad sa bazama podataka ......................................................................................................... 19

5.2.1.1 Otvaranje i zatvaranje programa za baze podataka ............................................................ 19

5.2.1.2 Otvaranje i zatvaranje baze podataka ................................................................................. 19

5.2.1.3 Kreiranje nove baze i spremanje na neku lokaciju .............................................................. 21

5.2.1.4 Trake sa alatima (Ribbons) ................................................................................................... 22

5.2.1.5 Korištenje Help funkcije – funkcije pomoći ......................................................................... 22

5.2.2 Uobičajeni zadaci ..................................................................................................................... 24

5.2.2.1 Otvaranje, spremanje i zatvaranje tabele, upita, forme i izvještaja .................................... 24

5.2.2.2 Mod (način) rada u tabeli, upitu, obrascu i izvještaju .......................................................... 26

Page 5: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

3

5.2.2.3 Brisanje tabele, upita, obrasca i izvještaja ........................................................................ 31

5.2.2.4 Kretanje između zapisa u tabeli, upitu i obrascu ................................................................. 32

5.2.2.5 Sortiranje informacija u tabeli, upitu i obrascu po rastućem ili opadajućem redu

(numeričkom ili abecedenom redu) .................................................................................................... 32

5.3 Tabele ............................................................................................................................................... 34

5.3.1 Zapisi (slogovi) .......................................................................................................................... 34

5.3.1.1 Unos i brisanje zapisa u tabeli .............................................................................................. 34

5.3.1.2 Dodavanje, brisanje i modifikovanje podataka zapisa ......................................................... 34

5.3.2 Dizajn tabela............................................................................................................................. 36

5.3.2.1 Kreiranje i imenovanje tabele i njenih polja ........................................................................ 36

5.3.2.2 Podešavanje formata polja (broj, datum/vrijeme, standardna vrijednost) ......................... 38

5.3.2.3 Kreiranje pravila provjere za broj, datum/vrijeme i valute.................................................. 41

5.3.2.4 Posljedice prilikom izmjene tipa podataka i karakteristike polja u tabeli............................ 42

5.3.2.5 Podešavanje polja primarnog ključa ................................................................................... 43

5.3.2.6 Indeksiranje polja (sa i bez dozvole duplih polja) ................................................................ 47

5.3.2.7 Dodavanje polja u postojeću tabelu .................................................................................... 48

5.3.2.8 Promjena širine kolona u tabeli ........................................................................................... 49

5.4 Povrat informacija ............................................................................................................................ 50

5.4.1 Glavne operacije ...................................................................................................................... 50

5.4.1.1 Pretraživanje baze za pronalaženje određene riječi, broja i datuma u polju ..................... 50

5.4.1.2 Primjena filtera u tabeli i formi ............................................................................................ 51

5.4.1.3 Uklanjanje filtera iz tabele i forme ....................................................................................... 52

5.4.2 Upiti .......................................................................................................................................... 54

5.4.2.1 Izdvajanje i analiza podataka pomoću upita ....................................................................... 54

5.4.2.2 Kreiranje upita nad jednom tabelom ................................................................................... 54

5.4.2.3 Kreiranje upita nad dvije tabele ........................................................................................... 56

5.4.2.4 Dodavanje kriterija u upit korištenjem jednog ili više operatora ........................................ 57

5.4.2.5 Dodavanje kriterija u upit korištenjem jednog ili više logičkih operatora (AND, OR, NOT) . 58

5.4.2.6 Korištenje specijalnih znakova u upitu................................................................................. 59

5.4.2.7 Uređivanje upita (dodavanje, uklanjanje, modifikovanje kriterija) ..................................... 60

5.4.2.8 Uređivanje upita (dodavanje, uklanjanje, pomjeranje, sakrivanje polja) ............................ 61

5.4.2.9 Pokretanje upita ................................................................................................................... 63

5.5 Objekti za prikaz i uređivanje podataka ........................................................................................... 65

5.5.1 Obrasci – forme ........................................................................................................................ 65

5.5.1.1 Korištenje obrazaca za prikaz i održavanje podataka ......................................................... 65

5.5.1.2 Kreiranje i imenovanje obrasca............................................................................................ 65

Page 6: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

4

5.5.1.3 Korištenje obrazaca za unos novih podataka ...................................................................... 71

5.5.1.4 Korištenje forme za brisanje podataka ................................................................................ 71

5.5.1.5 Korištenje obrasca za dodavanje, promjenu i brisanje podataka unutar zapisa ............... 72

5.5.1.6 Dodavanje i modifikovanje teksta u zaglavlju i podnožju obrasca ...................................... 72

5.6 Izvještaji ........................................................................................................................................... 75

5.6.1 Izvještaji i eksport podataka .................................................................................................... 75

5.6.1.1 Svrha izvještaja ..................................................................................................................... 75

5.6.1.2 Kreiranje i imenovanje izvještaja na osnovu tabele i upita.................................................. 75

5.6.1.3 Promjena rasporeda polja i zaglavlja unutar izvještaja ....................................................... 78

5.6.1.4 Predstavljanje određenih polja u grupnom izvještaju (sumarno, minimum, maksimum,

prosjek) 79

5.6.1.5 Dodavanje i modifikovanje zaglavlja i podnožja u izvještaju ............................................... 82

5.6.1.6 Eksportovanje podataka iz tabele i upita ............................................................................. 83

5.6.2 Štampanje ................................................................................................................................ 85

5.6.2.1 Promjena orijentacije, Promjena veličine papira ................................................................. 85

5.6.2.2 Štampanje stranice, određenog podataka ili kompletne tabele ......................................... 86

5.6.2.3 Štampanje svih podataka ili određenih stranica iz obrasca ................................................. 86

5.6.2.4 Štampanje rezutata upita..................................................................................................... 87

5.6.2.5 Štampanje određene strane u izvještaju ili cijelog izvještaja ............................................... 88

5.7 DODATAK ......................................................................................................................................... 90

5.7.1 Primjer kreiranja baze “Baza klijenata” ................................................................................... 90

5.7.2 Rječnik stranih pojmova ......................................................................................................... 100

Page 7: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf
Page 8: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

6

5 Baze podataka

5.1 Uvod u baze podataka

U ovom modulu ECDL obuke obradićemo jedan od jednostavnijih programa za kreiranje i upravljanje

bazama podataka – Microsoft Access.

Microsoft Access je program iz Microsoft Office paketa proizvoda namijenjenih kancelarijskom poslovanju

(u Microsoft Office paket spadaju još i Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Microsoft

Outlook i drugi programi).

5.1.1 Osnovni koncepti

5.1.1.1 Šta je baza podataka?

Baza podataka (engl. database) je skup informacija (podataka) koje su prikupljene u određenom, obično

dužem, vremenskom periodu. Baza podataka je uređena grupa podataka pohranjena na sistematski način

tako da računarski program može poslati upit bazi podataka na koji ona odgovara. Baze podataka služe za

bolju dostupnost i razvrstavanje podataka.

Različite vrste podataka možete organizovati i čuvati u tabelama (poput MS Excel-a) ili u tekstualnim

fajlovima (poput dokumenata MS Word-a), ali najefikasniji način rada sa podacima je sa bazama podataka.

5.1.1.2 Razlike između podataka i informacija

Podatak je prosta činjenica. Podaci se procesiraju, organizuju, struktuiraju ili predstavljaju u određenom

kontekstu da bi predstavljali korisnu informaciju.

Podaci, sami po sebi, nisu obično od neke koristi dok se ne interpetiraju na neki način ili uobliče da bi se

dobilo neko značenje. Tad postaju informacija.

Primjeri podataka su: krompir, 1, 50

Tek kad se podaci povežu na određen način predstavljaju informaciju, pa npr. komponujući navedene

podatke iz primjera na način: “krompir i 1 (KM) i 50 (kg)” može predstavljati informaciju da je kupljeno 50

kg kromrpira po cijeni od 1 KM; ili na način: “krompir i 1 (kg) i 50 (din)” predstavlja informaciju da jedan kg

krompira košta 50 din itd.

Računar radi sa podacima. Informacija je ljudsko tumačenje podataka. Rad sa podacima da bi se dobila

korisna informacija se izvodi sa programom kao što je Microsoft Access (u daljem tekstu MS Access).

5.1.1.3 Organizacija (struktura) baze podataka

Baza podataka je organizovana u smislu tabela, zapisa i polja.

Tabela (engl. table) postoji skoro u svakom Office programu, a služi za organizovanje informacija. U MS

Access programu, tabela je jedan od objekata koji služi za pohranjivanje podataka u svojim redovima i

kolonama. U redovima se nalaze zapisi ili slogovi (engl. records), a u kolonama su polja ili atributi (eng.

fields).

Page 9: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

7

Na primjer, možete imati tabelu koja sadrži podatke o narudžbama i proizvodima, zatim tabelu sa podacima

o zaposlenima i njihovom zaradom za određeni mjesec. Svaki zapis, tj. slog u tabeli sadrži informaciju o

jednoj stavci, npr. o nekom zaposlenom, a zapis je sastavljen od polja poput imena, adrese i broja telefona.

Primjeri tabela koje se kreiraju:

Tabela u kojoj čuvate imena svojih klijenata

Katalog proizvoda koje prodajete, koji može uključivati cijene i fotografije proizvoda

Inventurnu listu, gdje je šta uskladišteno i koliko komada

Slika 5-1 Primjer tabele klijenata

5.1.1.4 Primjena baza podataka

Baze podataka mogu biti manje, poput nekog ličnog adresara, do vrlo velikih baza sa ogromnim brojem

podataka.

Primjeri baza velikog kapaciteta koje se danas koriste su: sistem rezervacije letova, državni zapisi, baze

podataka o računima u bankama, baze podataka o bolničkom liječenju (pacijentima), baze podataka o

potrošačima električne energije, baze podataka korisnika fiksne i mobilne telefonije itd.

Bilo koji sistem koji mora upravljati sa većim brojem podataka, koji moraju biti dostupni i tačni u svakom

momentu baziran je na sistemu relacionih baza podataka.

U relacionim bazama podataka svi podaci se smještaju u tabele - svakoj tabeli dodjeljuje se ime, svakoj

koloni u tabeli dodjeljuje se atribut koji opisuje podatke koji se smještaju u toj koloni, svaki red u tabeli

predstavlja jedan zapis u bazi podataka. Prosječna baza sadrži na stotine tabela, a između tabela postoje

veze, tako da kad se izmijeni neki podatak (vrijednost polja) u jednoj tabeli, to utiče na sve tabele sa kojima

je prva tabela povezana. Operacije nad tabelama su matematički definisane relacionom algebrom (presjek,

unija, razlika itd...).

Primjer 1: Sistem za rezervaciju avionskih karata

Neki od podataka koji se pohranjuju u ovakvu bazu podataka su:

Informacija o rezervaciji: ime i prezime putnika, vrsta obroka, dodjeljeni broj sjedišta itd...

Informacija o letu uključuje mjesto polaska i dolaska kao i termine, tip aviona, itd.

Informacije o cijenama, taksama itd..

Tipične pretrage koje izvršava agent za rezervacije su izlistavanje letova na nekoj destinaciji u određenim

terminima, pronalaženje alternativnih ruta i tome slično. Tipične izmjene podataka su rezervisanje mjesta

Cijeli red predstavlja jedan zapis (slog) (record) u tabeli

Polje u tabeli (field)

Polje u tabeli (field)

Page 10: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

8

na određenom letu. Sistem mora obezbijediti ukupni integritet baze u slučaju da više agenata istovremeno

rade na rezervaciji mjesta na letu.

Primjer 2: Bankarski sistem

Neki od podataka koji se pohranjuju u ovakve baze podataka su:

Informacije o klijentima: ime, prezime, adresa, broj telefona, itd.

Informacije o računima: tip računa, kredita itd.

Veza između računa i klijenta

Kao i u prethodnom slučaju više subjekata istovremeno treba da može pristupiti računu, npr. klijent preko

ATM aparata i službenik na šalteru preko računara. Sistem mora da bilježi sve promjene i da radi i u

izvanrednim uslovima poput gubitka električne energije.

Primjer 3: Sistem tarifiranja potrošnje

Sistemi tarifiranja potrošnje električne ili toplotne energije, ili sistemi tarifiranja potrošnje impulsa za

korisnike fiksne i mobilne telefonije, moraju da sadrže:

Informacije o klijentima: ime, prezime, adresa, broj telefona, broj sata za očitavanje

Informacije o utrošku za protekli mjesec

Obračun i kreiranje dugovanja po klijentu

Uplate, Kamate na dugovanje

U ovakvim sistemima vrlo je bitno imati pouzdane sisteme koji imaju različite izvještaje i opcije za pružaoca

usluga i za klijenta.

5.1.1.5 Organizacija baze podataka

5.1.1.6 Princip kreiranja tabela

U bazi podataka, veze između podataka su predstavljene u tabelama pomoću zapisa ili slogova (engl.

records) i polja ili atributa (eng. fields).

Svaka tabela u bazi podataka treba da sadrži podatke vezane samo za jedan tip informacija, poput adresa

zaposlenih, narudžbe kupaca, metode isporuke, dobavljači itd. Svaka stavka i podaci o njoj predstavljaju

zapis ili slog.

Npr. na sljedećoj slici u tabeli “Narudzbe” detalji o narudžbi sa ID brojem 2, datumom narudžbe 22.5.2009,

datumom isporuke 1.6.2009, te oznakom kupca, sačinjavaju jedan zapis – slog. Svaka specifična informacija

o određenoj stavci poput broja (oznake), datuma kad je urađena narudžba ili isporuka i sl. predstavlja

atribut (polje) te stavke.

Slika 5-2 Zapisi (slogovi) i polja (atributi) jedne tabele

Page 11: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

9

5.1.1.7 Princip definisanja polja tabele

Zbog lakšeg pretraživanja i rada sa bazama podataka, svako polje i zapis u tabeli trebaju biti jedinstveni.

Npr. oznaka kupca 3 (koja, u stvari, predstavlja kupca pod imenom Zlata Mihić) treba da se pojavi samo u

jednom zapisu i samo u jednom polju tog zapisa.

Ujedno, svaki unos u određeno polje treba da bude istog formata i tipa, pa npr. u polje Telefon trebaju da

budu uneseni brojevi telefona po formatu prikazanom na slici 5.1 (065 / 333-444 ili 051 / 333-222), a ne

neki drugačiji tekst ili broj. U polje koje označava jedinstveni broj (ID) ne može biti ništa drugo uneseno od

rednog broja itd.

Od pravilno kreiranih tabela zavisi kasnije cijela struktura baze podataka i rad sa njom, tako da se treba

najveća pažnja treba obratiti upravo na kreiranje tabela u samom planiranju.

5.1.1.8 Princip definisanja sadržaja polja tabele

Kad se kreiraju tabele, određivanjem sadržaja polja i dužine polja, definišete šta korisnik može unijeti u

određeno polje, a sve to zbog očuvanja strukture i uređenosti baze, te “čistoće” njenih podataka.

Recimo da imate tabelu sa podacima o stanarima u zgradi. Polja tabele koje trebate definisati su:

Naziv polja Tip polja Dužina polja

Prezime Tekst (engl. Text) 40

Ime Tekst (engl. Text) 20

Broj stana Broj (engl. Number) 2

Broj telefona Tekst (engl. Text) 6

Broj stanara Broj (engl. Number) 1

Dakle, sa tipom polja ste odredili da se u tabelu pod kolonom “Broj stana” nikako ne može unijeti slovo,

nego mora biti broj (tip polja je Number) sa maksimalno dvije cifre (dužina polja je 2). Na taj način

smanjujete i greške pri unosu podataka. Dakle, ne može korisnik baze unijeti u polje “Broj stana” nešto

poput “6a” ili “163” ili nešto što nije broj sa jednom ili dvije cifre.

Pri definisanju polja možete odabrati sljedeće tipove polja:

Tekst (engl. Text)

Ovaj tip polja se koristi pri unošenju teksta ili kombinacije teksta i brojeva, poput imena, adresa ili brojeva

koji se neće koristiti pri izračunavanju u formulama (poput broja telefona, broj stana i sl.).

Maksimalan broj karaktera koji može biti unesen u ovakvo polje je 255, međutim kreator tabele može

ograničiti to polje na određen broj karaktera za unos (kao u prethodnoj tabeli).

Duži tekst (engl. Memo)

Ovakva vrsta polja se koristi za unos i čuvanje dužeg teksta, poput napomena ili opisa. Može da smjesti do

63,999 karaktera.

Broj (engl. Number)

Ako je tip polja Number u ovo polje korisnik neće moći unijeti tekst ili nešto što se neće moći koristiti u

kalkulacijama (formulama). Izuzetak je unos valute u ovo polje (pored iznosa se automatski upisuje valuta).

Page 12: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

10

U ovakvo polje se može smjestiti specifičan tip broja određen sa Field Size osobinom:

Slika 5-3 Vrste brojeva (tj. Field Size) koje se mogu unijeti u ovakvo polje

Osobina Field Size (Byte, Integer, Long Integer, Single, Double, Decimal, Replication ID) određuje, u stvari,

veličinu broja koja može biti smještena u polje (npr. “Integer” i “Long Integer” dozvoljava unos samo cijelog

broja ili će izvršiti zaokruživanje unesene vrijednosti na cijeli broj). Ukoliko želite omogućiti unos i rad sa

decimalnim brojevima potrebno je da izaberete npr. “Decimal”, “Single” ili “Double”.

Datum i vrijeme (engl. Date/Time)

Ako je polje okarakterisano tipom Date/Time, svaki podatak koji se unese u ovo polje biće protumačen kao

datum ili vrijeme. Ujedno će se pojaviti i obavezan način unosa ovog tipa podatka (Input Mask).

Slika 5-4 Tip polja – Date/Time i Input Mask (maska unosa)

U polju Format možete izabrati oblik datuma, a u polju Input Mask način unosa datuma. MS Access čita

regionalna podešavanja operativnog sistema, pa ako želite format datuma koji odgovara našem području

(“dan-mjesec-godina”, za razliku od američkog “mjesec-dan-godina”), morate izvršiti promjene u

regionalnim podešavanjima računara.

Valuta (engl. Currency)

Page 13: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

11

Ovaj tip polja se koristi za unos podatka u određenoj valuti. Ukoliko želite da to budu KM (konvertibilne

marke), morate izvršiti podešavanje regionalnih postavki u Control Panel-u. U polju Decimal Places možete

odrediti broj decimalnih mjesta koje će program koristiti.

Slika 5-5 Izabran tip polja Currency za kolonu Cijena sa dva decimalna mjesta

Automatsko numerisanje (engl. AutoNumber)

Automatsko numerisanje se koristi za automatski unos sljedećeg rednog broja kad se dodaje novi zapis.

Najčešće se prvom polju tabele koje imenujete kao neki ID dodjeljuje ovaj tip podatka.

Da/Ne (eng. Yes/No )

Ovaj tip podatka se koristi samo u slučaju kad imate dvije moguće vrijednosti unosa (da - ne, tačno -

netačno, uključeno - isključeno , plaćeno - neplaćeno itd. ). Ova polja ne mogu imati Null vrijednost (da

budu prazna – bez unesenog podatka).

OLE Objekat

Koristite OLE objekat (kao što je Microsoft Word dokument, Microsoft Excel fajl, sliku, zvuk, ili neki drugi

binarni zapis) kad želite u polje unositi takve vrste podataka (kreirane u drugom programu) .

Hiperveza (engl. Hyperlink)

Podatak koji će se unositi u ovo polje biće hiperveza.

Čarobnjak pretrage (engl. Lookup Wizard)

Koristite ovaj tip polja ukoliko želite polje koje će vam omogućavati unos podatka kao izbor neke vrijednosti

iz druge.

5.1.1.9 Karakteristike polja: veličina polja, format, standardna vrijednost

Svako polje tabele ima svoje karakteristične vrijednosti, koje definišete pri kreiranju tabela, poput veličine

polja, formata, standarne vrijednosti itd. Zavisno od tipa polja koje ste izabrali, pojaviće se i dodatne

karakteristike polja koje možete dodatno definisati.

Page 14: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

12

5-6. Karakteristike polja (Field Properties prodručje)

Npr. za polje tipa Broj (Number), moguće je dodatno definisati:

Veličinu broja (Field Size)

Format polja, tj. njegov oblik

Broj decimalnih mjesta

Maska unosa

Oznaka (engl. Caption)

Predefinisana vrijednost (Default Value) – već unešena neka vrijednost

Pravilo provjere da li su zadovoljeni neki uslovi pri unosu podatka (Validation Rule)

Tekst koji će se prikazati pri validaciji unosa (Validation Text)

Da li je unos obavezan (Required)?

Da li će polje biti indeksirano ili ne (sa ili bez mogućnosti duplikata) (Indexed)

Pomoćni savjeti (Smart Tags)

5.1.1.10 Šta je primarni ključ (Primary Key)?

Svaka tabela u bazi podataka treba imati polje koje jedinstveno predstavlja svaki zapis koji je spremljen u

tabeli. To se zove primarni ključ. Dakle, primarni ključ je polje u tabeli koji programu MS Access predstavlja

jedinstveni identifikator sloga za svaki red tabele (odnosno njen zapis).

U relacionoj bazi podataka informacije se dijele u posebne tabele. Veze između tabela ostvarene preko

primarnih ključeva govore programu MS Access na koji način dobija i predstavlja određenu informaciju. MS

Access koristi polja primarnog ključa za brzo povezivanje podataka iz više tabela i spajanje podataka na

smisleni način.

Kad se definiše primarni ključ u jednoj tabeli, može se koristiti i u drugim tabelama kao veza za upućivanje

na originalnu tabelu otkud je potekao primarni ključ.

Na primjer, polje ID kupca u tablici Kupci može se pojaviti i u tabeli Narudžbe. U tabeli Kupci to je primarni

ključ. U tabeli Narudžbe zove se vanjski ključ. Vanjski ključ, jednostavno rečeno, je primarni ključ neke druge

tabele.

Npr., u Tabeli Kupci polje Primarnog ključa je polje KupacID, dok je u Tabeli Narudzbe, polje KupacID

vanjski ključ (a primarni ključ Tabele Narudzbe je polje NarudzbaID)

Page 15: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

13

Slika 5-7 Veza između tabela preko polja primarnog ključa (KupacID)

Ova veza preko polja KupacID označava da će u vašoj bazi podataka svaka narudžba biti vezana za nekog

kupca, tj. svaki kupac će imati jednu ili više narudžbi.

Često, jedinstveni identifikacijski broj, poput ID broja ili serijskog broja ili šifre, služi kao primarni ključ u

tabeli. Na primjer, ako imate tabelu Kupci gdje svaki kupac ima jedinstveni ID kupca, polje Idkupac ili

KupacID ili kako god ga nazovete može biti primarni ključ.

Pravilan izbor polja primarnog ključa je vrlo važan u kreiranju tabela i veza između tabela. Dakle, on

jedinstveno identifikuje svaki zapis tabele, te zato nikad nije prazno polje (null) – uvijek sadrži neku

vrijednost (obavezno je). Taj primarni ključ se rijetko (najbolje nikada) ne mijenja.

Primjer loše odabranog primarnog ključa je naziv ili adresa. Oboje sadrže informacije koje se mogu

promijeniti s vremenom. Primjer dobrog primarnog ključa može biti jedinistveni matični broj kupca. .

5.1.1.11 Šta je indeks i kako on omogućava brži pristup podacima?

MS Access automatski stvara indeks (engl. index) za primarni ključ koji ubrzava upite i ostale operacije.

Access takođe provjerava da svaki zapis ima vrijednost u polju primarnog ključa, te da je on uvijek

jedinstven.

Indeksiranje tabele pomaže programu brže traženje i sortiranje informacije, pogotovo kad su u pitanju

velike tabele (sa hiljade slogova, tj. zapisa). Indeksirati se može bilo koje polje u tabeli, koje će se često

sortirati i pretraživati.

Indeksiranje se vrši pomoću određivanja karakteristika polja u dizajnu tabele – opcija Indexed.

Slika 5-8 Indeksiranje polja

Savjeti za indeksiranje:

Indeksirati polja koja se najčešće pretražuju i sortiraju (npr. ako imate mnogo kupaca u bazi i ako ih

često pretražujete po prezimenu, dobro bi bilo indeksirati polje KupacPrezime).

Nemojte previše polja indeksirati, jer će to kasnije usporiti rad programa

Neka polja se ne mogu indeksirati (polja tipa: memo, OLE i hiperlink polja)

Page 16: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

14

Polja primarnih ključeva se automatski indeksiraju (čim označite polje kao Primarni ključ, Access će

ga sam indeksirati)

Indeksiranje omogućava i praćenje, tj. onemogućavanje duplih unosa (označite opciju u

karakteristici polja Indexed – Yes (No Duplicates).

5.1.1.12 Veze između tabela (Relationships)

Da bismo napravili neki upit, obrazac ili izvještaj, potrebno je imati tabele koje su međusobno povezane. Za

dobijanje prave informacije iz neke baze podataka, potrebno je koristiti podatke iz više tabela. Vrlo je važno

da su ti podaci uvezani na neki način, tj. da su u međusobnoj zavisnosti.

5.1.1.13 Razlog uvođenja relacionih tabela

MS Access sadrži sistem upravljanja relacionih baza podataka. Kod relacionih baza podataka, informacije

možete podijeliti u odvojene tabele kreirane prema određenom predmetu. Koristite odnose tabela za

povezivanje informacija, ako je potrebno.

Stvaranje odnosa jedan prema više

Npr. ukoliko kreirate tabele “Kupci” i “Narudžbe” u svojoj bazi podataka, može se zaključiti da jedan kupac

može imati više narudžbi. To znači, da za sve kupce koji su predstavljeni u tabeli “Kupci” postoje mnoge

narudžbe predstavljene u tabeli “Narudzbe”.

Odnos između tabele Kupci i tabele Narudzbe je zato odnos “jedan-prema-više”.

Taj odnos, tj. veza “jedan-prema-više” između tabela Kupci i Narudzbe prikazan je na sljedećoj slici:

Slika 5-9 Odnos "jedan prema više"

5.1.1.14 Veza između tabela - Jedinstveno polje

Kao što smo vidjeli u prethodnom primjeru vezu između tabela uspostavljamo preko jedinstvenih polja, tj.

polja primarnog ključa.

Dakle, korištenjem jedinstvenog polja KupacID (nije moguće postojanje dva kupca sa istim identifikacionim

poljem KupacID), i njegovog ubacivanja u tabelu Narudzbe, osigurali ste da svaki kupac bude spojen sa

svojom narudžbom bez greške. Svaka narudžba je jedinstvena (može da sadrži mnogo stavki), ali je

jedinstveno označena identifikacionim polje NarudzbaID, ali ima i polja poput datuma narudžbe i isporuke.

Polje KupacID koje se ponavlja u tabeli Narudzbe čini neraskidivu vezu jedne ili više narudžbi sa određenim

(jedinstvenim) kupcem.

5.1.1.15 Održavanje integriteta veza između tabela

Osnovna svrha vezanih tabela u bazi podataka je smanjenje duplih podataka. Dupliranje podataka zauzima

prostor bez potrebe, te vodi do mogućih grešaka u radu sa podacima. Ako je npr. jedan kupac upisan više

Page 17: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

15

puta u tabelu, biće tretiran kao dva različita kupca (jer će imati dva različita identifikaciona broja KupacID,

iako su uneseni pod istim imenom).

Osnova za povezivanje relacionih tabela čini uspostavljanje parova primarnih i vanjskih ključeva. Ako niste

sigurni koje tabele trebaju dijeliti određene kolone, postojanje odnosa “jedan-prema-više” je siguran znak

da dvije tabele koje su u njega uključene trebaju imati zajedničku kolonu, u prethodnom primjeru KupacID.

Postoji opcija koja održava integritet u vezanim tabelama, tako da ukoliko je ona uključena, MS Access neće

dozvoliti slučajno brisanje nekog objekta koji je vezan za drugi objekat. Ta opcija se naziva “Enforce

Referential Integrity” i označava se ako se kreiraju veze - odnosi između tabela, što će biti pokazano

kasnije.

5-10 Kreiranje veza između tabela sa održavanje integriteta

Page 18: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

16

5.1.2 Rad sa bazom podataka

5.1.2.1 Profesionalni dizajn baze podataka

Baze podataka koje se danas koriste u poslovanju su jako složene i mogu da sadržavaju na hiljade tabela sa

hiljadama zapisa. Zbog toga je jako bitno da dizajn baze podataka (pravilan izbor tabela, polja, te veza

između njih) rade profesionalni dizajneri baza.

Pravilno dizajnirana baza podataka omogućava pristup svježe ažuriranim, tačnim informacijama. Budući da

je pravilan dizajn ključan za postizanje vaših ciljeva u radu s bazom podataka, ima smisla uložiti dovoljno

vremena potrebnog za učenje principa dobrog dizajna. Puno lakše ćete se snaći u bazi podataka koja

zadovoljava vaše potrebe i lako prihvaća promjene.

Slika 5-11 Primjer dizajna baze podataka sa vezama između tabela

5.1.2.2 Unos i održavanje podataka - korisnici

Dobro kreirana (dizajnirana) baza podataka, sa svojim tabelama, upitima, obrascima, treba da bude

jednostavna za korištenje, tj. za unos i operacije nad samim podacima. Unos i održavanje podataka treba da

vrše korisnici koji nisu IT profesionalci (radnici na šalterima u bankama, u turističkim agencijama, na

aerodromima, itd.)

Unos i promjena podataka se vrši preko obrazaca koji su kreirani od strane kreatora baze podataka,

profesionalca. Kasnije ćemo opisati kako se kreiraju jednostavni i laki za rad obrasci.

Page 19: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

17

Slika 5-12 Primjer obrasca za unos podataka o kupcu (korisnički prikaz)

Unos podataka o kupcu se vrši preko obrasca u tabelu koju obični korisnik ne vidi, ali je dostupna kreatoru

baze (administratoru).

Slika 5-13 Primjer tabele sa unešenim podacima (administratorski prikaz)

Tabela prikazana na prethodnoj slici nije laka za čitanje i rad sa podacima, te se i ne prikazuje korisniku baze

podataka.

5.1.2.3 Pristup podacima za određenog korisnika

Korisnici baze osnovne operacije sa podacima obavljaju preko specijalno kreiranih obrazaca. Ti obrasci se

kreiraju upravo iz razloga da se mogu kontrolisati određeni vidovi, tj. dozvole pristupa podacima. Najčešće,

baze podataka se prave na taj način da se svaka promjena nad podatkom bilježi, kad je unešena, ko ju je

unio i sl. Razne baze podataka imaju vrlo osjetljiv sadržaj, te se ograničava pristup i nivo manipulacije nad

nekim podacima.

Npr. kod bankarskih aplikacija i baza podataka, vrlo je bitno ko i na koji način može vršiti izmjenu stanja nad

određenim računom klijenta banke, jer postoje podaci poput stanja na računu, uplate, isplate, itd.

Dakle, administrator je taj ko može omogućiti (po instrukcijama nadležnih organa) ko može pristupiti i na

koji način određenim podacima, te koja prava ima neko nad tim podacima.

Page 20: ECDL Modul 5 - Baza podataka v1.2 DEMO.pdf

Lanaco ECDL priručnik - Modul 5: Baze podataka Microsoft Access

18

5.1.2.4 Vraćanje podataka prilikom kraha baze i pojavljivanja grešaka u bazi

Kad se baza podataka kreira i pusti u upotrebu, nakon izvjesnog vremena biće ispunjena podacima koji su

vrlo bitni za poslovanje. Administrator baze je odgovoran za pravljenje rezervnih kopija tih podataka, tako

da ako se nešto desi sa hardverom na kojem se baza nalazi (pokvari se neki dio) administrator mora

osigurati nesmetan rad ili vraćanje tih rezervnih kopija na novu mašinu – hardver.

Ponekad se može desiti da korisnik slučajno napravi neku grešku pri unosu, brisanju ili promjeni podataka, a

neće biti u mogućnosti da sam ispravi grešku, administrator će opet biti pozvan za povrat starijih podataka

(onih koji su bili prisutni prije greške korisnika).

Pravljenje rezervne kopije baze podataka naziva se „backup“ baze podataka, a radi se onoliko često koliko

to zahtjevaju poslovni procesi. Npr. backup se može vršiti mjesečno, sedmično, dnevno ili čak i češće (svaki

sat npr.).