Osnovna skola Prokosovici 8 Razred osnovne skole ACESS BAZA PODATAKA 8 RAZRED Lekcija 7 Predmetni nastavnik: Elvir Čajić
MSAccess kreiranje obrazca- čarobnjaci Najčešći način kreiranja obrazaca je pomoću Form Wizard čarobnjaka, pogotovo kada radimo jednostavne obrasce. Za naš prvi jednostavni obrazac odabrat ćemo podatke iz tablice Autori. Tu imamo samo dva polja: ime autora (AIme) i njegovo prezime (APrezime), ako ne računamo ID_Autor koje je po vrsti AutoNumber polje. U AutoNumber polja nije moguće upisivati podatke jer se automatski popunjavaju jedinstvenim brojčanim vrijednostima. Učenici sami kreiraju obrazac pomoću čarobnjaka: - u Database prozoru : Forms i u Toolbaru New. Slika 1. Otvaranje novog obrasca (Form) - u gornjem okviru odaberite Form Wizard. To je "čarobnjak" koji će vam pomoći u kreiranju obrasca. Opcije ispod takođe su svojevrsni čarobnjaci specijalizirani za pojedine vrste obrazaca. Za razliku od toga, izborom Design View prepušteni ste sami sebi tj. stvaranju obrasca bez ičije pomoći potpuno ispočetka - u donjem combo okviru trebate odrediti za koju tablicu ili upit ćete raditi obrazac. Izaberite tablicu Autori. Dalje će vas, kroz četiri laka koraka, voditi čarobnjak 1. korak: koja polja ćete imati na obrascu. Slika 2. Izbor polja za obrazac U lijevom okviru je popis polja tablice Autori, u desnom je okvir sa izabranim poljima. Strelice između okvira služe za prebacivanje polja iz jednog u drugi okvir. Iako smo rekli da nam ID_Autor zapravo ne treba, kliknite na strelice >> da biste u formu prebacili sva polja. Kliknite na Next za sljedeći korak
2. korak: kakav predefinirani raspored (Layout) polja želite. Slika 3. Izbor rasporeda (Layout) polja Na raspolaganju su četiri vrste obrazaca: Columnar slaže polja jedno ispod drugog u stupce (kolone). Koristi se kada slog ima puno polja koje sve odjednom želimo vidjeti na obrascu Tabular je izgled sličan tablici. Koristi se kada na obrascu želimo vidjeti više slogova Datasheet se koristi u iste svrhe kao i Tabular, a izgled obrasca identičan je izgledu tablice Justified slaže polja jedno pored drugog u redove. Slično kao i Columnar, koristi se za prikaz svih polja jednog sloga. Pošto tablica Autori ima malo polja, odaberite Tabular raspored i kliknite na Next 3. korak: koji stil obrasca želite Slika 4. Izbor stila obrasca Stilovi obrazaca imaju već unaprijed određen oblik, boju i veličinu fonda te cjelokupni izgled obrasca (boja okvira, pozadina, itd.). Odaberite npr. Industrial) i kliknite na Next 4. korak: koji će naziv imati obrazac Slika 5. Završne postavke kreiranja obrasca U gornjem polju Access će sam predložiti naziv isti nazivu izvorne tablice podataka. Naravno, možete dati naziv koji sami želite. U donjem dijelu određuje se kako će čarobnjak prikazati gotov obrazac: prvi izbor otvara obrazac u izvršnom izgledu (Form View) drugi izbor vodi u oblikovni pogled (Design View) gdje možete mijenjati i dorađivati izgled i ponašanje obrasca.
Klikom na finish dobijamo formu kreiranu pomoću čarobnjaka. Vježba: - isključite prikazivanje Properties prozora dok je forma u Form View izgledu. Označite svojstvo Allow Design Changes i izaberite Design view Only. - smanjite visinu polja APrezime tako da kliknite na polje i svojstvo Height postavite na 0,5 cm ili povlačenjem donjeg hvatača (mali crni kvadratić) prema gore - skratite Detail površinu forme tako da visina (Height) bude 0,7. Isto možete postići i odvlačeći donji rub Detail površine prema gore. - suzite polje ID_Autor za pola, a ostala za trećinu. Nakon toga širinu forme postavite na 9,5 cm. - sakrijte labelu ID_Autor_Label tako da je učinite nevidljivom: svojstvo Visible postavite na No. - isto tako učinite nevidljivima obrub oko polja. Za svako polje svojstvo Border Style postavite na Transparent (prozirno). - pošto je polje ID_Autor tipa AutoNumber, u njega se ne smije upisivati. Zato mu svojstvo Enabled postavite na False, a Locked na Yes. Otvorite formu u Form View načinu (izbornik View > naredba Form View). Sada bi vaša prva forma trebala izgledati približno kao na slici 10. Slika 10. Prvi obrazac nakon dorade ZAVRŠNO PONAVLJANJE OBVEZNIH SADRŽAJA 1. Što su obrasci i koja je njihova prednost? 2. Kako možemo dorađivati obrasce i što to znači? NEOBVEZNI SADRŽAJI - za one koji žele saznati više: Neka profesor pripremi tiskani materijal za svaku grupu, preda ga voditelju grupe i predloži da voditelj grupe prikupi novac i kopira zainteresiranim učenicima dodatne sadržaje na temu Izmjene u bazi podataka. Izmjene u bazi podataka izmjena relacija: želite li promijeniti svojstva već postavljene relacije između tablica, otvorite prozor Relationships (Tools > Relatioships). Postavite pokazivač miša nad linijom relacije koju želite mijenjati i kliknite desnom tipkom miša. Rezultat toga će biti podebljana relacijska linija i mali skočni izbornik u kojem odaberite naredbu Edit Relationship (slika 2). Ostalo je sve isto kao i kod kreiranja relacija, o čemu smo pisali u prošlom broju
Slika 2. Označavanje relacije za daljnje uređivanje brisanje relacija: označite relacijsku liniju i kliknite desnom tipkom miša. U skočnom izborniku odaberite naredbu Delete i nakon upita da li ste sigurni, potvrdite sa OK. Nakon toga, odmah možete kreirati novu relaciju. izmjena naziva tablice: prije izmjene naziva tablica (isto važi i za nazive polje), provjerite da li imate uključenu opciju Perform name AutoCorrect (u Options > General). Ova opcija osigurava da se izmjene naziva tablica automatski primijene svugdje gdje se spominje pojedina tablica. Nakon što ste izmijenili naziv tablice, nje više neće biti u grafičkom prikazu postojećih tablica. uklanjanje tablice: ako iz baze treba brisati, ukloniti tablice koje su u relaciji, nije svejedno kojim redoslijedom se brišu. U relaciji jedan-prema-više najprije se brišu tablice koje su na strani "više", a tek onda tablice na strani "jedan". Tablica se briše tako da ju označimo u prozoru Database i u skočnom izborniku kojeg dobijemo klikom desne tipke miša odaberemo naredbu Delete. izmjena naziva polja: kao i kod izmjene naziva tablice, treba provjeriti da li je u Options uključena postavka Perform name AutoCorrect. Ako je, stari naziv polja automatski će se zamijeniti novim u svim dijelovima baze podataka. Pri tome će se sačuvati i sve uspostavljene relacije u kojima sudjeluje preimenovano polje. Naziv polja mijenja se u Design View pogledu na strukturu tablice. izmjena redoslijeda polja: poljima možete slobodno mijenjati položaj tj. redoslijed u tablici podataka. U Design View označite redak koji predstavlja polje i tehnikom povuci-i-spusti odvucite ga na novu mjesto. brisanje polja: kada se polje briše iz tablice, vodite računa o posljedicama: - brisanjem polja nepovratno se brišu i podaci upisani u polje (kao i kreirani indeksi), - ako je pomoću polja kreirana relacija, najprije morate nju obrisati pa tek onda polje. brisanje slogova tablice: kod brisanja slogova isto treba biti oprezan. Ako je tablica u relaciji i uključena je opcija Cascade Delete Related Records, automatski će biti obrisani i zapisi u vezi iz druge tablice. Slogovi se brišu tako što se u Datasheet View pogledu na tablicu označi željeni slog i u skočnom izborniku (poziva se desnim klikom miša) odabere naredba Delete Record. Obrišite vježbovnu verziju baze s tvrdog diska i ponovo prekopirajte Biblio1.mdb sa Enterovog CD-a. Vježba:. Polja s primarnim ključem, pogotovo ako su u relaciji, podliježu posebnim pravilima zaštite integriteta baze podataka. Access štiti takva polja time što ne dozvoljava njihovo brisanje, preimenovanje i promjene svojstva Data Type.
Međutim, ponekad je nužne upravo takve izmjene. Evo kako se to radi: - otvorite tablicu Autori u Design View načinu i označite polje ID_Autor. To polje sadrži primarni ključ i nositelj je relacije s tablicom Naslovi - ako pokušate promijeniti svojstvo Data Type, dobit ćete poruku: "You can't change the data type or field size of this field; it is part or one or more relationships". To znači da najprije trebate obrisati uspostavljenu relaciju nad tim poljem - otvorite prozor Relationships, označite crtu relacije između tablica Autori i Naslovi i obrišite ju. Tek sada možete vršiti izmjene nad poljem s primarnim ključem - pokušajte promijeniti svojstvo DataType u AutoNumer. Dobit ćete poruku da čim se podaci jednom upišu u tablicu, više ne možete više mijenjati ovo svojstvo u AutoNumber. Pošto su u našoj tablici već upisani podaci, očito imamo problem. Međutim, postoji rješenje. - kreirajte novo polje s AutoNumber vrstom podataka i zatim obrišite originalno polje s primarnim ključem. Access će tražiti potvrdu za takvu izmjenu jer će automatski obrisati i primarni ključ - novom polju dajte ime upravo obrisanog polja (ID_Autor) i postavite primarni ključ na tom polju naredbom Edit > Primary Key - kreirajte istu relaciju koja je postojala prije no što ste obrisali originalno ID polje. Iako već u samim tablicama možemo štošta činiti s podacima (upis, izmjene, brisanje, sortiranje, filtriranje itd.), neposredan rad u tablicama nije preporučljiv. Npr. može doći do slučajnog brisanja, pogrešnog (nelogičnog) upisa ili kakve druge nenamjerne radnje koju Access neće moći spriječiti. Nadalje, pogledajte podatke u tablici Naslovi. Većina polja su strani ključevi (Foreign Key) u kojima nisu upisani pravi podaci, nego njihove brojčane šifre. Tko bi pamtio sve te šifre! Umjesto neposrednog rada s tablicama koristimo posredan način pomoću obrazaca (Forms). Oni nam omogućuju da imamo potpunu kontrolu nad svim akcijama koje korisnik vrši tijekom rada s podacima. Osim toga, olakšavaju upis podataka i čine ga razumljivijim. OBRADA OBVEZNIH SADRŽAJA I VJEŽBA Neka učenici otvore bazu Biblio1.mdb. Kako vidjeti tablice u tablici: Neka učenici u otvorenoj bazi Biblio1.mdb otvore tablicu Autori u Datasheet View pogledu - uočite znak plus u prvom neimenovanom stupcu (to nije pravo polje, zato i nema naziv) - kliknite na plus kod npr. autora Miroslava Krleže. Otvara se "tablica" Naslovi s kojom je tablica Autori u relaciji jedan-prema-više. Ne prikaže se cijela tablica nego samo podaci povezani s trenutnim slogom. U našem slučaju to su svi Krležini naslovi - uočite da i slogovi iz "tablice" Naslovi imaju stupac s plusom. Kliknite na plus u slogu naslova "U logoru". Trebali biste dobiti prikaz kao na slici 1 Slika 1. Slogovi međusobno povezanih tablica mogu se vidjeti u tablici s glavnim ključem
Sada je jasnije što smo mislili kada smo u prijašnjim nastavcima rekli da je MS Access sustav za upravljanje bazama podataka. Access "drži u glavi" sve tablice i uspostavljenje relacije te ih dopunjuje svojim informacijama (kao npr. ovaj stupac s plusom). Iako već u samim tablicama možemo štošta činiti s podacima (upis, izmjene, brisanje, sortiranje, filtriranje itd.), neposredan rad s tablicama nije preporučljiv. Npr. može doći do slučajnog brisanja, pogrešnog (nelogičnog) upisa ili kakve druge nenamjerne radnje koju Access neće moći spriječiti. Umjesto neposrednog rada s tablicama koristimo posredan način pomoću obrazaca (Forms). Oni nam omogućuju da imamo potpunu kontrolu nad svim akcijama koje korisnik vrši tijekom rada s podacima jer se mogu programirati. Osim toga, olakšavaju upis podataka i čine ga razumljiv Učenici će izvršiti doradu obrasca: Iz Form View treba se prebaciti u Design View način rada ( View Design View). Obrazac je podijeljen na tri glavna dijela: Form Header: zaglavlje obrasca u kojem se prikazuju npr. nazivi polja Detail: glavna površina u kojoj se raspoređuju polja iz tablice Form Footer: podnožje rezervirano za dodatne informacije ( Osim samog obrasca, uočavaju se još dva dodatna prozora. Toolbox prozor sadrži grafičke kontrole koje smještamo na formu i koje služe za rad s podacima te uopšte za dizajniranje izgleda obrasca. Slika 6. Toolbox s kontrolama Vježba: - isključite prikazivanje Properties prozora dok je forma u Form View izgledu. Označite svojstvo Allow Design Changes i izaberite Design view Only. - smanjite visinu polja APrezime tako da kliknite na polje i svojstvo Height postavite na 0,5 cm ili povlačenjem donjeg hvatača (mali crni kvadratić) prema gore - skratite Detail površinu forme tako da visina (Height) bude 0,7. Isto možete postići i odvlačeći donji rub Detail površine prema gore. - suzite polje ID_Autor za pola, a ostala za trećinu. Nakon toga širinu forme postavite na 9,5 cm. - sakrijte labelu ID_Autor_Label tako da je učinite nevidljivom: svojstvo Visible postavite na No. ijim