20

ECDL Modul ECDL Modul 5 - Baze podataka5 - Baze Podataka - Demo

Embed Size (px)

DESCRIPTION

ECDL Modul 5 - Baze podataka - demo

Citation preview

  • Lanaco ECDL prirunik

    Modul 5: Baze podataka

    Microsoft Access

    Lanaco Edukacija

    Banja Luka, 2010.

    v.1.1.

    Copyright

    2010

    Umnoavanje, reprodukcija ili na drugi nain koritenje i objavljivanje tekstova iz ovog prirunika, bez

    naknade i bez dozvole autora ili izdavaa, kanjivi su po lanu 120. Zakona o autorskom pravu i

    srodnim pravima (Slubeni glasnik BiH, broj 7/02).

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    3

    Sadraj

    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 izmeu podataka i informacija ....................................................................... 6

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

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

    5.1.2 Organizacija baze podataka ............................................................................................ 9

    5.1.2.1 Princip kreiranja tabela ............................................................................................... 9

    5.1.2.2 Princip definisanja polja tabele ................................................................................... 9

    5.1.2.3 Princip definisanja sadraja polja tabele ..................................................................... 9

    5.1.2.4 Karakteristike polja: veliina polja, format, standardna vrijednost .......................... 13

    5.1.2.5 ta je primarni klju (Primary Key)? .......................................................................... 13

    5.1.2.6 ta je indeks i kako on omogudava bri pristup podacima? ..................................... 14

    5.1.3 Veze izmeu tabela (Relationships) .............................................................................. 15

    5.1.3.1 Razlog uvoenja relacionih tabela ............................................................................ 15

    5.1.3.2 Veza izmeu tabela - Jedinstveno polje .................................................................... 16

    5.1.3.3 Odravanje integriteta veza izmeu tabela .............................................................. 16

    5.1.4 Rad sa bazom podataka ................................................................................................ 18

    5.1.4.1 Profesionalni dizajn baze podataka .......................................................................... 18

    5.1.4.2 Unos i odravanje podataka - korisnici ..................................................................... 18

    5.1.4.3 Pristup podacima za odreenog korisnika ................................................................ 19

    5.1.4.4 Vradanje podataka prilikom kraha baze i pojavljivanja greaka u bazi ..................... 20

    5.2 Koritenje aplikacije MS Access ............................................................................................ 21

    5.2.1 Rad sa bazama podataka .............................................................................................. 21

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

    5.2.1.2 Otvaranje i zatvaranje baze podataka ...................................................................... 23

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

    5.2.1.4 Trake sa alatima ........................................................................................................ 27

    5.2.1.5 Koritenje Help funkcije funkcije pomodi .............................................................. 29

    5.2.2 Uobiajeni zadaci .......................................................................................................... 30

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    4

    5.2.2.1 Otvaranje, spremanje i zatvaranje tabele, upita, forme i izvjetaja ......................... 30

    5.2.2.2 Mod (nain) rada u tabeli, upitu, obrascu i izvjetaju ............................................... 35

    5.2.2.3 Brisanje tabele, upita, obrasca i izvjetaja ............................................................. 41

    5.2.2.4 Kretanje izmeu zapisa u tabeli, upitu i obrascu ...................................................... 43

    5.2.2.5 Sortiranje informacija u tabeli, upitu i obrascu po rastudem ili opadajudem redu

    (numerikom ili abecedenom redu) ......................................................................................... 43

    5.3 Tabele .................................................................................................................................... 46

    5.3.1 Zapisi (slogovi) ............................................................................................................... 46

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

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

    5.3.2 Dizajn tabela .................................................................................................................. 48

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

    5.3.2.2 Podeavanje formata polja (broj, datum/vrijeme, standardna vrijednost) .............. 50

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

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

    5.3.2.5 Podeavanje polja primarnog kljua ........................................................................ 58

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

    5.3.2.7 Dodavanje polja u postojedu tabelu ......................................................................... 63

    5.3.2.8 Promjena irine kolona u tabeli ................................................................................ 64

    5.4 Povrat informacija ................................................................................................................. 65

    5.4.1 Glavne operacije ........................................................................................................... 65

    5.4.1.1 Pretraivanje baze za pronalaenje odreene rijei, broja i datuma u polju .......... 65

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

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

    5.4.2 Upiti ............................................................................................................................... 70

    5.4.2.1 Izdvajanje i analiza podataka pomodu upita ............................................................ 70

    5.4.2.2 Kreiranje upita nad jednom tabelom ........................................................................ 71

    5.4.2.3 Kreiranje upita nad dvije tabele ................................................................................ 73

    5.4.2.4 Dodavanje kriterija u upit koritenjem jednog ili vie operatora ............................. 74

    5.4.2.5 Dodavanje kriterija u upit koritenjem jednog ili vie logikih operatora (AND, OR,

    NOT) ................................................................................................................................... 75

    5.4.2.6 Koritenje specijalnih znakova u upitu ...................................................................... 77

    5.4.2.7 Ureivanje upita (dodavanje, uklanjanje, modifikovanje kriterija) .......................... 79

    5.4.2.8 Ureivanje upita (dodavanje, uklanjanje, pomjeranje, sakrivanje polja) ................. 79

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    5

    5.4.2.9 Pokretanje upita ........................................................................................................ 81

    5.5 Objekti za prikaz i ureivanje podataka ................................................................................ 83

    5.5.1 Obrasci forme ............................................................................................................. 83

    5.5.1.1 Koritenje obrazaca za prikaz i odravanje podataka .............................................. 83

    5.5.1.2 Kreiranje i imenovanje obrasca ................................................................................. 83

    5.5.1.3 Koritenje obrazaca za unos novih podataka ........................................................... 91

    5.5.1.4 Koritenje forme za brisanje podataka ..................................................................... 92

    5.5.1.5 Koritenje obrasca za dodavanje, promjenu i brisanje podataka unutar zapisa .... 93

    5.5.1.6 Dodavanje i modifikovanje teksta u zaglavlju i podnoju obrasca ........................... 93

    5.6 Izvjetaji ................................................................................................................................ 96

    5.6.1 Izvjetaji i eksport podataka ......................................................................................... 96

    5.6.1.1 Svrha izvjetaja .......................................................................................................... 96

    5.6.1.2 Kreiranje i imenovanje izvjetaja na osnovu tabele i upita ....................................... 96

    5.6.1.3 Promjena rasporeda polja i zaglavlja unutar izvjetaja ............................................ 99

    5.6.1.4 Predstavljanje odreenih polja u grupnom izvjetaju (sumarno, minimum,

    maksimum, prosjek) ................................................................................................................ 101

    5.6.1.5 Dodavanje i modifikovanje zaglavlja i podnoja u izvjetaju .................................. 104

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

    5.6.2 tampanje ................................................................................................................... 107

    5.6.2.1 Promjena orijentacije, Promjena veliine papira .................................................... 107

    5.6.2.2 tampanje stranice, odreenog podataka ili kompletne tabele............................. 108

    5.6.2.3 tampanje svih podataka ili odreenih stranica iz obrasca .................................... 109

    5.6.2.4 tampanje rezutata upita ........................................................................................ 110

    5.6.2.5 tampanje odreene strane u izvjetaju ili cijelog izvjetaja .................................. 111

    5.7 DODATAK ............................................................................................................................ 113

    5.7.1 Primjer kreiranja baze Baza klijenata ...................................................................... 113

    5.7.2 Rjenik stranih pojmova .............................................................................................. 127

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    6

    5 Baze podataka

    5.1 Uvod u baze podataka

    U ovom modulu ECDL obuke obradidemo jedan od jednostavnijih programa za kreiranje i upravljanje

    bazama podataka Microsoft Access. Uporedno demo prikazati rad sa komandama iz Microsoft

    Access verzije 2003 i 2007 (koncepti su isti, razlikuju se u grafikom okruenju).

    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 odreenom,

    obino duem, vremenskom periodu. Baza podataka je ureena grupa podataka pohranjena na

    sistematski nain tako da raunarski program moe poslati upit bazi podataka na koji ona odgovara.

    Baze podataka slue za bolju dostupnost i razvrstavanje podataka.

    Razliite vrste podataka moete organizovati i uvati u tabelama (poput MS Excel-a) ili u tekstualnim

    fajlovima (poput dokumenata MS Word-a), ali najefikasniji nain rada sa podacima je sa bazama

    podataka.

    5.1.1.2 Razlike izmeu podataka i informacija

    Podatak je prosta injenica. Podaci se procesiraju, organizuju, struktuiraju ili predstavljaju u

    odreenom kontekstu da bi predstavljali korisnu informaciju.

    Podaci, sami po sebi, nisu obino od neke koristi dok se ne interpetiraju na neki nain ili uoblie da bi

    se dobilo neko znaenje. Tad postaju informacija.

    Primjeri podataka su: krompir, 1, 50

    Tek kad se podaci poveu na odreen nain predstavljaju informaciju, pa npr. komponujudi

    navedene podatke iz primjera na nain: krompir i 1 (KM) i 50 (kg) moe predstavljati informaciju

    da je kupljeno 50 kg kromrpira po cijeni od 1 KM; ili na nain: krompir i 1 (kg) i 50 (din) predstavlja

    informaciju da jedan kg krompira kota 50 din itd.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    7

    Raunar radi sa podacima. Informacija je ljudsko tumaenje 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 slui za organizovanje informacija. U

    MS Access programu, tabela je jedan od objekata koji slui 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).

    Na primjer, moete imati tabelu koja sadri podatke o narudbama i proizvodima, zatim tabelu sa

    podacima o zaposlenima i njihovom zaradom za odreeni mjesec. Svaki zapis, tj. slog u tabeli sadri

    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 moe ukljuivati cijene i fotografije proizvoda

    Inventurnu listu, gdje je ta uskladiteno i koliko komada

    Slika 5-1 Primjer tabele klijenata

    5.1.1.4 Primjena baza podataka

    Baze podataka mogu biti manje, poput nekog linog adresara, do vrlo velikih baza sa ogromnim

    brojem podataka.

    Primjeri baza velikog kapaciteta koje se danas koriste su: sistem rezervacije letova, dravni zapisi,

    baze podataka o raunima u bankama, baze podataka o bolnikom lijeenju (pacijentima), baze

    podataka o potroaima elektrine energije, baze podataka korisnika fiksne i mobilne telefonije itd.

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

    Polje u tabeli (field)

    Polje u tabeli (field)

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    8

    Bilo koji sistem koji mora upravljati sa vedim brojem podataka, koji moraju biti dostupni i tani u

    svakom momentu baziran je na sistemu relacionih baza podataka.

    U relacionim bazama podataka svi podaci se smjetaju u tabele - svakoj tabeli dodjeljuje se ime,

    svakoj koloni u tabeli dodjeljuje se atribut koji opisuje podatke koji se smjetaju u toj koloni, svaki

    red u tabeli predstavlja jedan zapis u bazi podataka. Prosjena baza sadri na stotine tabela, a

    izmeu tabela postoje veze, tako da kad se izmijeni neki podatak (vrijednost polja) u jednoj tabeli, to

    utie na sve tabele sa kojima je prva tabela povezana. Operacije nad tabelama su matematiki

    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 sjedita itd...

    Informacija o letu ukljuuje mjesto polaska i dolaska kao i termine, tip aviona, itd.

    Informacije o cijenama, taksama itd..

    Tipine pretrage koje izvrava agent za rezervacije su izlistavanje letova na nekoj destinaciji u

    odreenim terminima, pronalaenje alternativnih ruta i tome slino. Tipine izmjene podataka su

    rezervisanje mjesta na odreenom letu. Sistem mora obezbijediti ukupni integritet baze u sluaju da

    vie 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 raunima: tip rauna, kredita itd.

    Veza izmeu rauna i klijenta

    Kao i u prethodnom sluaju vie subjekata istovremeno treba da moe pristupiti raunu, npr. klijent

    preko ATM aparata i slubenik na alteru preko raunara. Sistem mora da biljei sve promjene i da

    radi i u izvanrednim uslovima poput gubitka elektrine energije.

    Primjer 3: Sistem tarifiranja potronje

    Sistemi tarifiranja potronje elektrine ili toplotne energije, ili sistemi tarifiranja potronje impulsa za

    korisnike fiksne i mobilne telefonije, moraju da sadre:

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

    Informacije o utroku za protekli mjesec

    Obraun i kreiranje dugovanja po klijentu

    Uplate, Kamate na dugovanje

    U ovakvim sistemima vrlo je bitno imati pouzdane sisteme koji imaju razliite izvjetaje i opcije za

    pruaoca usluga i za klijenta.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    9

    5.1.2 Organizacija baze podataka

    5.1.2.1 Princip kreiranja tabela

    U bazi podataka, veze izmeu podataka su predstavljene u tabelama pomodu zapisa ili slogova (engl.

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

    Svaka tabela u bazi podataka treba da sadri podatke vezane samo za jedan tip informacija, poput

    adresa zaposlenih, narudbe kupaca, metode isporuke, dobavljai itd. Svaka stavka i podaci o njoj

    predstavljaju zapis ili slog.

    Npr. na sljededoj slici u tabeli Narudzbe detalji o narudbi sa ID brojem 2, datumom narudbe

    5/22/2009, datumom isporuke 6/1/2009, te oznakom kupca, sainjavaju jedan zapis slog. Svaka

    specifina informacija o odreenoj stavci poput broja (oznake), datuma kad je uraena narudba ili

    isporuka i sl. predstavlja atribut (polje) te stavke.

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

    5.1.2.2 Princip definisanja polja tabele

    Zbog lakeg pretraivanja 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 Mihid) treba da

    se pojavi samo u jednom zapisu i samo u jednom polju tog zapisa.

    Ujedno, svaki unos u odreeno 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 drugaiji tekst ili broj. U polje koje oznaava jedinstveni broj (ID) ne moe biti

    nita drugo uneseno od rednog broja itd.

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

    treba najveda panja treba obratiti upravo na kreiranje tabela u samom planiranju.

    5.1.2.3 Princip definisanja sadraja polja tabele

    Kad se kreiraju tabele, odreivanjem sadraja polja i duine polja, definiete ta korisnik moe unijeti

    u odreeno polje, a sve to zbog ouvanja strukture i ureenosti baze, te istode njenih podataka.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    10

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

    Naziv polja Tip polja Duina 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 moe unijeti

    slovo, nego mora biti broj (tip polja je Number) sa maksimalno dvije cifre (duina polja je 2). Na taj

    nain smanjujete i greke pri unosu podataka. Dakle, ne moe korisnik baze unijeti u polje Broj

    stana neto poput 6a ili 163 ili neto to nije broj sa jednom ili dvije cifre.

    Pri definisanju polja moete odabrati sljedede tipove polja:

    Tekst (engl. Text)

    Ovaj tip polja se koristi pri unoenju teksta ili kombinacije teksta i brojeva, poput imena, adresa ili

    brojeva koji se nede koristiti pri izraunavanju u formulama (poput broja telefona, broj stana i sl.).

    Maksimalan broj karaktera koji moe biti unesen u ovakvo polje je 255, meutim kreator tabele

    moe ograniiti to polje na odreen broj karaktera za unos (kao u prethodnoj tabeli).

    Dui tekst (engl. Memo)

    Ovakva vrsta polja se koristi za unos i uvanje dueg teksta, poput napomena ili opisa. Moe da

    smjesti do 63,999 karaktera.

    Broj (engl. Number)

    Ako je tip polja Number u ovo polje korisnik nede modi unijeti tekst ili neto to se nede modi koristiti

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

    valuta).

    U ovakvo polje se moe smjestiti specifian tip broja odreen sa Field Size osobinom:

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    11

    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) odreuje, u

    stvari, veliinu broja koja moe biti smjetena u polje (npr. Integer i Long Integer dozvoljava unos

    samo cijelog broja ili de izvriti zaokruivanje unesene vrijednosti na cijeli broj). Ukoliko elite

    omoguditi 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 bide

    protumaen kao datum ili vrijeme. Ujedno de se pojaviti i obavezan nain unosa ovog tipa podatka

    (Input Mask).

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

    U polju Format moete izabrati oblik datuma, a u polju Input Mask nain unosa datuma. MS Access

    ita regionalna podeavanja operativnog sistema, pa ako elite format datuma koji odgovara naem

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    12

    podruju (dan-mjesec-godina, za razliku od amerikog mjesec-dan-godina), morate izvriti

    promjene u regionalnim podeavanjima raunara.

    Valuta (engl. Currency)

    Ovaj tip polja se koristi za unos podatka u odreenoj valuti. Ukoliko elite da to budu KM

    (konvertibilne marke), morate izvriti podeavanje regionalnih postavki u Control Panel-u. U polju

    Decimal Places moete odrediti broj decimalnih mjesta koje de 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 sljededeg rednog broja kad se dodaje novi

    zapis. Najede 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 sluaju kad imate dvije mogude vrijednosti unosa (da - ne, tano -

    netano, ukljueno - iskljueno , pladeno - nepladeno 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 de se unositi u ovo polje bide hiperveza.

    arobnjak pretrage (engl. Lookup Wizard)

    Koristite ovaj tip polja ukoliko elite polje koje de vam omogudavati unos podatka kao izbor neke

    vrijednosti iz druge.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    13

    5.1.2.4 Karakteristike polja: veliina polja, format, standardna vrijednost

    Svako polje tabele ima svoje karakteristine vrijednosti, koje definiete pri kreiranju tabela, poput

    veliine polja, formata, standarne vrijednosti itd. Zavisno od tipa polja koje ste izabrali, pojavide se i

    dodatne karakteristike polja koje moete dodatno definisati.

    5-6. Karakteristike polja (Field Properties prodruje)

    Npr. za polje tipa Broj (Number), mogude je dodatno definisati:

    Veliinu broja (Field Size)

    Format polja, tj. njegov oblik

    Broj decimalnih mjesta

    Maska unosa

    Oznaka (engl. Caption)

    Predefinisana vrijednost (Default Value) ved uneena neka vrijednost

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

    Tekst koji de se prikazati pri validaciji unosa (Validation Text)

    Da li je unos obavezan (Required)?

    Da li de polje biti indeksirano ili ne (sa ili bez mogudnosti duplikata) (Indexed)

    Pomodni savjeti (Smart Tags)

    5.1.2.5 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).

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    14

    U relacionoj bazi podataka informacije se dijele u posebne tabele. Veze izmeu tabela ostvarene

    preko primarnih kljueva govore programu MS Access na koji nain dobija i predstavlja odreenu

    informaciju. MS Access koristi polja primarnog kljua za brzo povezivanje podataka iz vie tabela i

    spajanje podataka na smisleni nain.

    Kad se definie primarni klju u jednoj tabeli, moe se koristiti i u drugim tabelama kao veza za

    upudivanje na originalnu tabelu otkud je potekao primarni klju.

    Na primjer, polje ID kupca u tablici Kupci moe se pojaviti i u tabeli Narudbe. U tabeli Kupci to je

    primarni klju. U tabeli Narudbe zove se vanjski klju. Vanjski klju, jednostavno reeno, je primarni

    klju neke druge tabele.

    Npr., u Tabeli Kupci polje Primarnog kljua je polje KupacID, dok je u Tabeli Narudzbe, polje KupacID

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

    Slika 5-7 Veza izmeu tabela preko polja primarnog kljua (KupacID)

    Ova veza preko polja KupacID oznaava da de u vaoj bazi podataka svaka narudba biti vezana za

    nekog kupca, tj. svaki kupac de imati jednu ili vie narudbi.

    esto, jedinstveni identifikacijski broj, poput ID broja ili serijskog broja ili ifre, slui 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 moe biti primarni klju.

    Pravilan izbor polja primarnog kljua je vrlo vaan u kreiranju tabela i veza izmeu tabela. Dakle, on

    jedinstveno identifikuje svaki zapis tabele, te zato nikad nije prazno polje (null) uvijek sadri neku

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

    Primjer loe odabranog primarnog kljua je naziv ili adresa. Oboje sadre informacije koje se mogu

    promijeniti s vremenom. Primjer dobrog primarnog kljua moe biti jedinistveni matini broj kupca. .

    5.1.2.6 ta je indeks i kako on omogudava bri pristup podacima?

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

    operacije. Access takoe provjerava da svaki zapis ima vrijednost u polju primarnog kljua, te da je

    on uvijek jedinstven.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    15

    Indeksiranje tabele pomae programu bre traenje i sortiranje informacije, pogotovo kad su u

    pitanju velike tabele (sa hiljade slogova, tj. zapisa). Indeksirati se moe bilo koje polje u tabeli, koje

    de se esto sortirati i pretraivati.

    Indeksiranje se vri pomodu odreivanja karakteristika polja u dizajnu tabele opcija Indexed.

    Slika 5-8 Indeksiranje polja

    Savjeti za indeksiranje:

    Indeksirati polja koja se najede pretrauju i sortiraju (npr. ako imate mnogo kupaca u bazi i

    ako ih esto pretraujete po prezimenu, dobro bi bilo indeksirati polje KupacPrezime).

    Nemojte previe polja indeksirati, jer de to kasnije usporiti rad programa

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

    Polja primarnih kljueva se automatski indeksiraju (im oznaite polje kao Primarni klju,

    Access de ga sam indeksirati)

    Indeksiranje omogudava i pradenje, tj. onemogudavanje duplih unosa (oznaite opciju u

    karakteristici polja Indexed Yes (No Duplicates).

    5.1.3 Veze izmeu tabela (Relationships)

    Da bismo napravili neki upit, obrazac ili izvjetaj, potrebno je imati tabele koje su meusobno

    povezane. Za dobijanje prave informacije iz neke baze podataka, potrebno je koristiti podatke iz vie

    tabela. Vrlo je vano da su ti podaci uvezani na neki nain, tj. da su u meusobnoj zavisnosti.

    5.1.3.1 Razlog uvoenja relacionih tabela

    MS Access sadri sistem upravljanja relacionih baza podataka. Kod relacionih baza podataka,

    informacije moete podijeliti u odvojene tabele kreirane prema odreenom predmetu. Koristite

    odnose tabela za povezivanje informacija, ako je potrebno.

    Stvaranje odnosa jedan prema vie

    Npr. ukoliko kreirate tabele Kupci i Narudbe u svojoj bazi podataka, moe se zakljuiti da jedan

    kupac moe imati vie narudbi. To znai, da za sve kupce koji su predstavljeni u tabeli Kupci

    postoje mnoge narudbe predstavljene u tabeli Narudzbe.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    16

    Odnos izmeu tabele Kupci i tabele Narudzbe je zato odnos jedan-prema-vie.

    Taj odnos, tj. veza jedan-prema-vie izmeu tabela Kupci i Narudzbe prikazan je na sljededoj slici:

    Slika 5-9 Odnos "jedan prema vie"

    5.1.3.2 Veza izmeu tabela - Jedinstveno polje

    Kao to smo vidjeli u prethodnom primjeru vezu izmeu tabela uspostavljamo preko jedinstvenih

    polja, tj. polja primarnog kljua.

    Dakle, koritenjem jedinstvenog polja KupacID (nije mogude postojanje dva kupca sa istim

    identifikacionim poljem KupacID), i njegovog ubacivanja u tabelu Narudzbe, osigurali ste da svaki

    kupac bude spojen sa svojom narudbom bez greke. Svaka narudba je jedinstvena (moe da sadri

    mnogo stavki), ali je jedinstveno oznaena identifikacionim polje NarudzbaID, ali ima i polja poput

    datuma narudbe i isporuke. Polje KupacID koje se ponavlja u tabeli Narudzbe ini neraskidivu vezu

    jedne ili vie narudbi sa odreenim (jedinstvenim) kupcem.

    5.1.3.3 Odravanje integriteta veza izmeu tabela

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

    zauzima prostor bez potrebe, te vodi do mogudih greaka u radu sa podacima. Ako je npr. jedan

    kupac upisan vie puta u tabelu, bide tretiran kao dva razliita kupca (jer de imati dva razliita

    identifikaciona broja KupacID, iako su uneseni pod istim imenom).

    Osnova za povezivanje relacionih tabela ini uspostavljanje parova primarnih i vanjskih kljueva. Ako

    niste sigurni koje tabele trebaju dijeliti odreene kolone, postojanje odnosa jedan-prema-vie je

    siguran znak da dvije tabele koje su u njega ukljuene trebaju imati zajedniku kolonu, u

    prethodnom primjeru KupacID.

    Postoji opcija koja odrava integritet u vezanim tabelama, tako da ukoliko je ona ukljuena, MS

    Access nede dozvoliti sluajno brisanje nekog objekta koji je vezan za drugi objekat. Ta opcija se

    naziva Enforce Referential Integrity i oznaava se ako se kreiraju veze - odnosi izmeu tabela, to

    de biti pokazano kasnije.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    17

    5-10 Kreiranje veza izmeu tabela sa odravanje integriteta

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    18

    5.1.4 Rad sa bazom podataka

    5.1.4.1 Profesionalni dizajn baze podataka

    Baze podataka koje se danas koriste u poslovanju su jako sloene i mogu da sadravaju na hiljade

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

    polja, te veza izmeu njih) rade profesionalni dizajneri baza.

    Pravilno dizajnirana baza podataka omogudava pristup svjee auriranim, tanim informacijama.

    Bududi da je pravilan dizajn kljuan za postizanje vaih ciljeva u radu s bazom podataka, ima smisla

    uloiti dovoljno vremena potrebnog za uenje principa dobrog dizajna. Puno lake dete se snadi u

    bazi podataka koja zadovoljava vae potrebe i lako prihvada promjene.

    Slika 5-11 Primjer dizajna baze podataka sa vezama izmeu tabela

    5.1.4.2 Unos i odravanje podataka - korisnici

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

    jednostavna za koritenje, tj. za unos i operacije nad samim podacima. Unos i odravanje podataka

    treba da vre korisnici koji nisu IT profesionalci (radnici na alterima u bankama, u turistikim

    agencijama, na aerodromima, itd.)

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

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

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    19

    Slika 5-12 Primjer obrasca za unos podataka o kupcu (korisniki prikaz)

    Unos podataka o kupcu se vri preko obrasca u tabelu koju obini korisnik ne vidi, ali je dostupna

    kreatoru baze (administratoru).

    Slika 5-13 Primjer tabele sa uneenim 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.4.3 Pristup podacima za odreenog korisnika

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

    obrasci se kreiraju upravo iz razloga da se mogu kontrolisati odreeni vidovi, tj. dozvole pristupa

    podacima. Najede, baze podataka se prave na taj nain da se svaka promjena nad podatkom biljei,

    kad je uneena, ko ju je unio i sl. Razne baze podataka imaju vrlo osjetljiv sadraj, te se ograniava

    pristup i nivo manipulacije nad nekim podacima.

    Npr. kod bankarskih aplikacija i baza podataka, vrlo je bitno ko i na koji nain moe vriti izmjenu

    stanja nad odreenim raunom klijenta banke, jer postoje podaci poput stanja na raunu, uplate,

    isplate, itd.

  • Lanaco ECDL prirunik - Modul 5: Baze podataka Microsoft Access

    20

    Dakle, administrator je taj ko moe omoguditi (po instrukcijama nadlenih organa) ko moe pristupiti

    i na koji nain odreenim podacima, te koja prava ima neko nad tim podacima.

    5.1.4.4 Vradanje podataka prilikom kraha baze i pojavljivanja greaka u bazi

    Kad se baza podataka kreira i pusti u upotrebu, nakon izvjesnog vremena bide ispunjena podacima

    koji su vrlo bitni za poslovanje. Administrator baze je odgovoran za pravljenje rezervnih kopija tih

    podataka, tako da ako se neto desi sa hardverom na kojem se baza nalazi (pokvari se neki dio)

    administrator mora osigurati nesmetan rad ili vradanje tih rezervnih kopija na novu mainu

    hardver.

    Ponekad se moe desiti da korisnik sluajno napravi neku greku pri unosu, brisanju ili promjeni

    podataka, a nede biti u mogudnosti da sam ispravi greku, administrator de opet biti pozvan za

    povrat starijih podataka (onih koji su bili prisutni prije greke korisnika).

    Pravljenje rezervne kopije baze podataka naziva se backup baze podataka, a radi se onoliko esto

    koliko to zahtjevaju poslovni procesi. Npr. backup se moe vriti mjeseno, sedmino, dnevno ili ak i

    ede (svaki sat npr.).

    5 Baze podataka5.1 Uvod u baze podataka5.1.1 Osnovni koncepti5.1.1.1 ta je baza podataka?5.1.1.2 Razlike izmeu podataka i informacija5.1.1.3 Organizacija (struktura) baze podataka5.1.1.4 Primjena baza podataka

    5.1.2 Organizacija baze podataka5.1.2.1 Princip kreiranja tabela5.1.2.2 Princip definisanja polja tabele5.1.2.3 Princip definisanja sadraja polja tabele5.1.2.4 Karakteristike polja: veliina polja, format, standardna vrijednost5.1.2.5 ta je primarni klju (Primary Key)?5.1.2.6 ta je indeks i kako on omoguava bri pristup podacima?

    5.1.3 Veze izmeu tabela (Relationships)5.1.3.1 Razlog uvoenja relacionih tabela5.1.3.2 Veza izmeu tabela - Jedinstveno polje5.1.3.3 Odravanje integriteta veza izmeu tabela

    5.1.4 Rad sa bazom podataka5.1.4.1 Profesionalni dizajn baze podataka5.1.4.2 Unos i odravanje podataka - korisnici5.1.4.3 Pristup podacima za odreenog korisnika5.1.4.4 Vraanje podataka prilikom kraha baze i pojavljivanja greaka u bazi

    5.2 Koritenje aplikacije MS Access5.2.1 Rad sa bazama podataka5.2.1.1 Otvaranje i zatvaranje programa za baze podataka5.2.1.2 Otvaranje i zatvaranje baze podataka5.2.1.3 Kreiranje nove baze i spremanje na neku lokaciju5.2.1.4 Trake sa alatima5.2.1.5 Koritenje Help funkcije funkcije pomoi

    5.2.2 Uobiajeni zadaci5.2.2.1 Otvaranje, spremanje i zatvaranje tabele, upita, forme i izvjetaja5.2.2.2 Mod (nain) rada u tabeli, upitu, obrascu i izvjetaju5.2.2.3 Brisanje tabele, upita, obrasca i izvjetaja5.2.2.4 Kretanje izmeu zapisa u tabeli, upitu i obrascu5.2.2.5 Sortiranje informacija u tabeli, upitu i obrascu po rastuem ili opadajuem redu (numerikom ili abecedenom redu)

    5.3 Tabele5.3.1 Zapisi (slogovi)5.3.1.1 Unos i brisanje zapisa u tabeli5.3.1.2 Dodavanje, brisanje i modifikovanje podataka zapisa

    5.3.2 Dizajn tabela5.3.2.1 Kreiranje i imenovanje tabele i njenih polja5.3.2.2 Podeavanje formata polja (broj, datum/vrijeme, standardna vrijednost)5.3.2.3 Kreiranje pravila provjere za broj, datum/vrijeme i valute5.3.2.4 Posljedice prilikom izmjene tipa podataka i karakteristike polja u tabeli5.3.2.5 Podeavanje polja primarnog kljua5.3.2.6 Indeksiranje polja (sa i bez dozvole duplih polja)5.3.2.7 Dodavanje polja u postojeu tabelu5.3.2.8 Promjena irine kolona u tabeli

    5.4 Povrat informacija5.4.1 Glavne operacije5.4.1.1 Pretraivanje baze za pronalaenje odreene rijei, broja i datuma u polju5.4.1.2 Primjena filtera u tabeli i formi5.4.1.3 Uklanjanje filtera iz tabele i forme

    5.4.2 Upiti5.4.2.1 Izdvajanje i analiza podataka pomou upita5.4.2.2 Kreiranje upita nad jednom tabelom5.4.2.3 Kreiranje upita nad dvije tabele5.4.2.4 Dodavanje kriterija u upit koritenjem jednog ili vie operatora5.4.2.5 Dodavanje kriterija u upit koritenjem jednog ili vie logikih operatora (AND, OR, NOT)5.4.2.6 Koritenje specijalnih znakova u upitu5.4.2.7 Ureivanje upita (dodavanje, uklanjanje, modifikovanje kriterija)5.4.2.8 Ureivanje upita (dodavanje, uklanjanje, pomjeranje, sakrivanje polja)5.4.2.9 Pokretanje upita

    5.5 Objekti za prikaz i ureivanje podataka5.5.1 Obrasci forme5.5.1.1 Koritenje obrazaca za prikaz i odravanje podataka5.5.1.2 Kreiranje i imenovanje obrasca5.5.1.3 Koritenje obrazaca za unos novih podataka5.5.1.4 Koritenje forme za brisanje podataka5.5.1.5 Koritenje obrasca za dodavanje, promjenu i brisanje podataka unutar zapisa5.5.1.6 Dodavanje i modifikovanje teksta u zaglavlju i podnoju obrasca

    5.6 Izvjetaji5.6.1 Izvjetaji i eksport podataka5.6.1.1 Svrha izvjetaja5.6.1.2 Kreiranje i imenovanje izvjetaja na osnovu tabele i upita5.6.1.3 Promjena rasporeda polja i zaglavlja unutar izvjetaja5.6.1.4 Predstavljanje odreenih polja u grupnom izvjetaju (sumarno, minimum, maksimum, prosjek)5.6.1.5 Dodavanje i modifikovanje zaglavlja i podnoja u izvjetaju5.6.1.6 Eksportovanje podataka iz tabele i upita

    5.6.2 tampanje5.6.2.1 Promjena orijentacije, Promjena veliine papira5.6.2.2 tampanje stranice, odreenog podataka ili kompletne tabele5.6.2.3 tampanje svih podataka ili odreenih stranica iz obrasca5.6.2.4 tampanje rezutata upita5.6.2.5 tampanje odreene strane u izvjetaju ili cijelog izvjetaja

    5.7 DODATAK5.7.1 Primjer kreiranja baze Baza klijenata5.7.2 Rjenik stranih pojmova