Download presentation
Presentation is loading. Please wait.
1
in osnove programa Microsoft Access
Podatkovne baze in osnove programa Microsoft Access Bor Plestenjak
2
Glavno kazalo Osnove podatkovnih baz
Primer načrtovanja podatkovne baze Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
3
Podatkovne baze Z urejevalniki besedil (npr. Microsoft Word) obdelujemo besedila. S preglednicami (npr. Microsoft Excel) obdelujemo numerične podatke. Podatkovne baze (npr. Microsoft Access) pa so namenjene za shranjevanje in obdelavo najrazličnejših strukturiranih podatkov. Zbirke informacij: telefonski imenik, redovalnica, seznam strank, seznam inventarja, ... Podatki so lahko različnih vrst: števila, nizi, datumi, zneski, slike, .... Podatkovne baze I. del
4
Tabela Preprosta baza podatkov je telefonski imenik. Podatki v imeniku so: priimek in ime, naslov, telefonska številka. Telefonski imenik je tabela (table), ki za vsakega naročnika vsebuje en zapis (record). Zapis za vsakega naročnika vsebuje 3 polja (fields): Priimek in ime, Naslov in Telefonsko številko. Zapisi so enolično urejeni po imenu, zato pravimo, da je to polje ključ (key). Priimek in ime Naslov Tel. številka Androjna Klemen Dvoržakova 10, Ljubljana Bebler Jaka Slovenska 25, Ljubljana Dolenc Drago Mariborska 15, Celje Košir France Gozdna 7, Kranj Jakopič Rudi Jamova 23, Ljubljana Podatkovne baze I. del
5
Telefonski imenik Struktura tabele je: Slabosti zgornjega koncepta so:
Key Field Name Data Type Field Size * Priimek in ime Text 40 Naslov 80 Tel. številka 11 Priimek in ime Naslov Tel. številka Androjna Klemen Dvoržakova 10, Ljubljana Bebler Jaka Slovenska 25, Ljubljana Dolenc Drago Mariborska 15, Celje Košir France Gozdna 7, Kranj Jakopič Rudi Jamova 23, Ljubljana Slabosti zgornjega koncepta so: težko je urediti udeležence po krajih, če želimo podatke uporabiti za izpis nalepk za dopise, moramo zamenjati ime in priimek, poštno številko (tega podatka sedaj ni) in kraj pa moramo izpisati v novo vrstico Podatkovne baze I. del
6
Izboljšani telefonski imenik
Uporabimo več polj: Priimek Ime Ulica Poštna številka Kraj Tel. številka Androjna Klemen Dvoržakova 10 1000 Ljubljana Bebler Jaka Slovenska 25 Dolenc Drago Mariborska 15 3000 Celje Košir France Gozdna 7 4000 Kranj Jakopič Rudi Jamova 23 Sedaj je preprosto: urediti udeležence po krajih, izpisati nalepke za dopise Podatkovne baze I. del
7
Uporaba podatkovne baze
Podatki so shranjeni v eni ali več tabelah. Poleg shranjevanja informacij podatke tudi obdelujemo. Če imamo v bazi seznam poslovnih strank, lahko npr: Dobimo seznam vseh strank, ki v zadnjih 60 dneh niso kupile ničesar. Stranke uredimo po poštnih številkah in v tem vrstnem redu natisnemo poštne nalepke. Izdelamo enostaven zaslonski obrazec za vnos podatkov, ki ga lahko uporablja celo neizurjeno osebje. Podatkovne baze I. del
8
Programi za podatkovne baze
Za delo s podatkovnimi bazami potrebujemo posebne programe. Baza podatkov je ponavadi združena z orodji za izdelovanje samostojnih programov za vnos in obdelavo podatkov. Celotni paket lahko razdelimo na naslednje dele: S tabelami in njihovimi povezavami definiramo, kje bodo shranjeni podatki in kako so medsebojno povezani. S poizvedbami (querry) pridemo do podatkov, ki nas zanimajo in ki so lahko vsebovani v več različnih tabelah. Obrazce (form) uporabljamo za vnos podatkov. Poročila (report) uporabljamo za izpis različnih poročil. Tudi preglednico lahko obravnavamo kot bazo podatkov, vendar gre tu le za eno tabelo, pri bazah podatkov pa imamo to možnost, da uporabljamo več kot eno tabelo in s tem bolje organiziramo podatke. Podatkovne baze I. del
9
Vrste podatkovnih baz Preproste baze z eno tabelo:
Microsoft Excel, ... Relacijske podatkovne baze, kjer program omogoča tudi pisanje programov za generiranje obrazcev in poročil: Microsoft Access, Borland Paradox, Lotus Approach, ... Baze tipa klient-strežnik (client-server): Microsoft SQL Server, Oracle SQL Server, IBM DB2, InterBase, ... Tu strežnik skrbi za podatke, klient pa vsebuje program, ki strežniku pošilja zahteve za podatki, ponavadi za to uporablja jezik SQL (standard query language). Sam klient je lahko napisan v C++, Visual Basic, Delphi, Javi, ... To pride v poštev za resne aplikacije, saj je klientov lahko več, SQL strežnik pa teče neodvisno od klientov, zato morebitne težave s programi na podatke ne vplivajo. Podatkovne baze I. del
10
Relacijske baze podatkov
Pri relacijski bazi podatkov lahko podatke shranjujemo v več kot eni tabeli, podatki pa so medsebojno lahko povezani z relacijami. Za primer vzemimo naslednjo bazo rabljenih avtomobilov: Prodajalci ID Prodajalec Naziv Naslov Kraj Telefon WWW Avtomobili ID Avtomobil ID Model ID Prodajalec Letnik Prevoženih KM Cena Dodatna oprema Barva Modeli ID Model Naziv Moč KM Hitrost Prtljažnik Dolžina Poraba Pospešek Z uporabo več povezanih tabel se izognemo podvajanju podatkov. Podatkovne baze I. del
11
Primarni ključ Primarni ključ je polje (ali več polj), katerega podatki enolično označujejo vsak zapis v tabeli. Primarni ključ sicer ni obvezen, ga pa potrebujemo pri povezovanju tabel, ko se iz ene tabele sklicujemo na nek zapis v drugi tabeli. Ponavadi za primarni ključ izberemo polje tipa AutoNumber, kjer program sam poskrbi za to, da bo primarni ključ enoličen. Podatkovne baze I. del
12
Povezovanje tabel Tabele, ki jih imamo v bazi podatkov, lahko uporabljamo vsako zase, še veliko uporabnejše pa postanejo, ko jih povežemo. Povezava (referenca) med tabelama je povezava med poljema (ali ustreznim številom polj na eni in drugi strani) dveh tabel, ki vsebujeta podatek, skupen obema tabelama. Ponavadi podatek iz ene tabele vežemo s primarnim ključem v drugi tabeli. Obstajajo tri vrste povezav med tabelami: Ena proti več: v prvi tabeli se podatek lahko pojavi le enkrat, v drugi pa poljubno mnogokrat. To povezavo imenujemo tudi master-detail. Več proti več: v obeh tabelah se podatek lahko pojavi poljubno mnogokrat. Ena proti ena: v obeh tabelah se podatek lahko pojavi le enkrat. Master Detail Master Prodajalci ID Prodajalec Naziv ... Avtomobili ID Avtomobil ID Model ID Prodajalec ... Modeli ID Model Naziv ... Podatkovne baze I. del
13
Referenčna integriteta
Sama povezava še ne preprečuje, da ne bi mogli v tabelo vstaviti reference, ki je v glavni tabeli ni. To lahko dosežemo z referenčno integriteto, ki varuje povezane podatke pred nehotenim spreminjanjem ali brisanjem. Pri referenčni integriteti tako ni možno vstaviti zapisa z referenco, ki je ni v glavni tabeli (lahko pa pustimo polje prazno, če je to dovoljeno). Prav tako ni možno zapisa odstraniti iz glavne tabele, če ne odstranimo prej tudi vse zapise v povezanih tabelah, ki se nanašajo nanj. Odpravljanje težav lahko tudi avtomatiziramo: Cascade Update Related Fields: ob spremembi primarnega ključa program sam popravi vse reference na ta zapis v povezanih tabelah. Cascade Delete Related Records: pri brisanju zapisa iz glavne tabele program odstrani vse zapise v povezanih tabelah, ki se nanašajo nanj. Podatkovne baze I. del
14
Razvoj podatkovne baze
Najpomembnejša je konstrukcija baze! Pred začetkom je najbolje s papirjem in svinčnikom narediti načrt baze. Izogniti se je potrebno podvajanju podatkov, premisliti, kam shraniti vse podatke in kako jih obdelati. Če je načrt zanič, je najbolje čim prej začeti še enkrat od začetka in ne poskušati za silo zakrpati bazo. Razmisliti je potrebno o vseh možnih statistikah, ki bi jih kdo želel dobiti iz podatkov, o različnih poročilih in raznih dodatnih podatkih, ki bi jih lahko še obdelovali. Podatkovne baze I. del
15
Kazalo Osnove podatkovnih baz Primer načrtovanja podatkovne baze
Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
16
Zgled načrtovanja baze
Denimo, da bi radi razvili bazo interesnih dejavnosti dijakov, v kateri bi vodili evidenco o obiskovanju krožkov na šoli. Podatki, ki bi jih radi imeli v bazi so: ime dijaka, letnica rojstva, krožek, ki ga obiskuje, vodja krožka, letna članarira. Podatkovne baze I. del
17
Ena tabela Najprej se nam porodi ideja, da bi lahko vse stlačili v eno tabelo. Ker lahko en dijak obiskuje več kot en krožek, bomo predpostavili, da nihče ne obiskuje več kot dva krožka. Struktura tabele je: Dijak, Letnik, Krožek1, Vodja1, Cena1, Krožek2, Vodja2, Cena2. Dijak Letnik Krožek1 Vodja1 Cena1 Krožek2 Vodja2 Cena2 Janez Novak 1990 Tenis Marko Kos 2000 Plavanje Tadej Murn Barbara Deu 1991 Košarka Jasna Cevc 1000 Miha Mavec Klemen Bernik 1500 Žan Klopec Podatkovne baze I. del
18
Preverimo ustreznost rešitve
Dijak Letnik Krožek1 Vodja1 Cena1 Krožek2 Vodja2 Cena2 Janez Novak 1990 Tenis Marko Kos 2000 Plavanje Tadej Murn Barbara Deu 1991 Košarka Jasna Cevc 1000 Miha Mavec Klemen Bernik 1500 Žan Klopec Razmislimo, kakšne podatke potrebujemo. Ali lahko računalnik preprosto: Ugotovi, kateri učenci obiskujejo plavalni krožek? Ugotovi, kdo je vodja plavalnega krožka? Analizirajmo podatke: V tabeli imamo dva Janeza Novaka. Ali je to pomota ali sta res dva? Nič nam ne preprečuje, da ne bi pri krožku zapisali različni vodji ali različni ceni. Ali je cena za plavanje 2000 ali 1500? Kaj če se eden izmed študentov odloči, da ima dovolj časa za obiskovanje treh aktivnosti? Podatkovne baze I. del
19
Popravljen načrt baze Da se izognemo podvojenim dijakom, damo vsakemu dijaku svojo enolično identifikacijsko številko in bazo ločimo na tabelo dijakov in tabelo aktivnosti. ID Dijak Letnik 084 Janez Novak 1990 100 Barbara Deu 1991 117 Miha Mavec 123 Žan Klopec 167 Dijak Krožek1 Vodja1 Cena1 Krožek2 Vodja2 Cena2 084 Tenis Marko Kos 2000 Plavanje Tadej Murn 100 Košarka Jasna Cevc 1000 117 Klemen Bernik 1500 123 167 Podatkovne baze I. del
20
Popravljen načrt baze še ni idealen
Dijak Krožek1 Vodja1 Cena1 Krožek2 Vodja2 Cena2 084 Tenis Marko Kos 2000 Plavanje Tadej Murn 100 Košarka Jasna Cevc 1000 117 Klemen Bernik 1500 123 167 Neizkoriščen prostor Nekateri dijaki hodijo le na en krožek, zato je prostor za drugi krožek neizkoriščen. Odvečno delo Če se cena tenisa poveča, moramo v vsakem zapisu, ki vsebuje tenis, popraviti ceno. Podvojeni podatki Če se 50 dijakov odloči za plavanje, moramo vsakič vtipkati krožek, vodjo in ceno. Ali je cena za plavanje 1500 ali 2000 SIT? Težavne poizvedbe Če želimo poiskati vse dijake, ki hodijo na plavanje, moramo pogledati dva stolpca. Kako ugotovimo pravilno ceno plavanja? Podatkovne baze I. del
21
V tretje gre rado Tudi aktivnosti damo v svojo tabelo.
Dijak Letnik 084 Janez Novak 1990 100 Barbara Deu 1991 117 Miha Mavec 123 Žan Klopec 167 ID Krožek Vodja Cena 1 Tenis Marko Kos 2000 2 Košarka Jasna Cevc 1000 3 Plavanje Tadej Murn 4 Klemen Bernik 1500 Dijak Krožek 084 1 3 100 2 117 4 123 167 Podvojenih podatkov ni več. Ceno krožka lahko popravimo le na enem mestu. Lahko dodamo podatke o novem krožku, čeprav ga še nihče ne obiskuje. Podatkovne baze I. del
22
Dodatni podatki Denimo, da potrebujemo tudi podatke o razredih in razrednikih. Dodamo še eno tabelo z razredi in razredniki in jo povežemo z dijaki. ID Dijak Letnik ID Razred 084 Janez Novak 1990 1 100 Barbara Deu 1991 3 117 Miha Mavec 123 Žan Klopec 167 2 ID Razred Razrednik 1 2.a Polona Jan 2 2.b Jasna Cevc 3 1.a Zvone Hiti 4 1.b Karel Nagode Podatkovne baze I. del
23
Končna shema Dijaki Razredi Aktivnosti Izbrani krožki
Podatkovne baze I. del
24
Še nekaj malenkosti Poleg baze krožkov potrebujemo na šoli tudi druge podatke: seznam razredov, ocene, izostanki, itd. Za vse potrebe potrebujemo le eno tabelo dijakov, ki mora vsebovati še ostale podatke: datum rojstva, naslov, ..., ime pa je zaradi urejanja razdeljeno na ime in priimek. Nekaj napotkov: Sestavljena polja ločimo na posamezna polja (npr. ime in priimek). Tabeli dodamo ključ, ki enolično določa zapis (npr. ID ali pa ključ sestavimo iz toliko polj, da je to enolično) Znebimo se ponavljajočih se polj (npr. Krožek1, Krožek2, ...). Znebimo se ponavljajočih se podatkov. Namesto tega damo podatek, ki se ponavlja, v svojo tabelo, nato pa tabeli povežemo. Naj nam ne bo škoda časa za načrtovanje baze, saj je bazo, ko je program že skoraj narejen, težko drastično spreminjati. Podatkovne baze I. del
25
Kazalo Osnove podatkovnih baz Primer načrtovanja podatkovne baze
Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
26
Microsoft Access 2000 Omenjena teorija podatkovnih baz velja za vse podatkovne baze. Ker so programi za delo z bazami dokaj podobni, ni težko začeti uporabljati drug program, ko poznamo enega. V nadaljevanju si bomo kot primer podatkovnih baz pogledali program Microsoft Access 2000. Glavne značilnosti programa so: V samem programu lahko definiramo tabele, povezave in vnašamo podatke. Definiramo lahko poizvedbe s katerimi pridemo do raznih podatkov ali pa spreminjamo njihovo vrednost. S pomočjo vgrajenih čarovnikov lahko naredimo preproste obrazce in poročila (znanje programiranja ni potrebno). Zapletenejše programe lahko sestavimo s programiranjem v jeziku Visual Basic for Applications, ki je skupni za celotni Microsoft Office. Sestavimo lahko tudi internetne strani, preko katerih lahko pregledujemo in spreminjamo podatke. Podatkovne baze I. del
27
Zagon programa Ob zagonu programa se pojavi okno z izbiro baze podatkov: Blank Access database: začnemo z prazno datoteko. Najprej moramo določiti ime datoteke in jo shraniti na disk. Access database wizards...: s pomočjo čarovnikov lahko zgradimo bazo podatkov Open an existing file: Odpremo že obstoječo bazo podatkov. Access bazo podatkov (tako podatke, kot tudi pripadajoče poizvedbe, obrazce in poročila) shrani v eni datoteki s končnico mdb. Edina izjema so obrazci za urejanje podatkov preko interneta, ki jih shrani kot HTM dokumente. Podatkovne baze I. del
28
Glavno okno Ko odpremo bazo podatkov oz. določimo datoteko za novo bazo, se pojavi okno, kjer lahko izbiramo med gradniki. Na voljo so po vrsti: tabele (tables), poizvedbe (queries), obrazce (forms), poročila (reports), internetni obrazci (pages), makroji (macros), moduli (modules). Podatkovne baze I. del
29
Kazalo Osnove podatkovnih baz Primer načrtovanja podatkovne baze
Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
30
Nova tabela Za novo tabelo na kartici Tables izberemo gumb New, nato pa enega izmed naslednjih načinov: Datasheet View. Odpre novo tabelo v obliki preglednice, kamor vnašamo podatke. Posamezna polja lahko preimenujemo z dvojnim klikom na njegovo ime. Odvečne prazne stolpce in vrstice bo program na koncu odstranil, iz tipov vnešenih podatkov pa bo poskusil uganiti tipe posameznih polj. Že obstoječo tabelo odpremo v tem načinu z ukazom Open na kartici Tables. Design View. V tem načinu določimo imena in lastnosti posameznih polj tabele, podatke pa vstavljamo kasneje v načinu Datasheet View. Lastnosti polj lahko nastavimo veliko bolj natančno, kot bi jih program sam določil iz vnešenih podatkov. Lastnosti posameznih polj lahko spreminjamo tudi že obstoječi tabeli, tako da jo odpremo z ukazom Design na kartici Tables. Table Wizard. Tabelo izdelamo s pomočjo čarovnika. Import Table. Tabela bo kopija druge tabele iz iste (ali druge) baze podatkov. Link Table. Tabela bo v bistvu le povezava do tabele iz druge (ali iste) baze podatkov. Na ta način lahko iste tabele uporabljamo v več bazah podatkov. Podatkovne baze I. del
31
Design View za urejanje tabele
V načinu design za vsako polje določimo njegovo ime, tip podatka in njegove lastnosti. Nastavimo lahko tudi osnovne vrednosti, izmed katerih lahko izbiramo vrednost polja, če gre za takšno polje. Če pa gre za povezavo z drugo tabelo, lahko določimo, kaj naj se prikazuje na mestu reference. Podatkovne baze I. del
32
Glavne lastnosti polja
Ime polja (Field Name) ima lahko maksimalno 64 znakov. Tip polja (Data Type) je lahko: Text: kratko besedilo (do 255 znakov) Memo: daljše besedilo Number: število Date/Time: čas in datum Currency: denarni znesek AutoNumber: avtomatično enolično določeno število Yes/No: logična vrednost OLE object: predmet iz drugega programa, npr. slika, preglednica, ... Hyperlink: spletna povezava LookupWizard: to je čarovnik za določanje vnosa podatkov v izbrano polje, kadar ima polje le končno mnogo vrednosti, ki jih določimo ali sami ali pa so to vse vrednosti izbranega stolpca v izbrani tabeli. V opis (Description) lahko shranimo opis polja, ki se potem izpisuje v obrazcih za vnos podatkov. Podatkovne baze I. del
33
Velikost polja Spodaj lahko nastavimo še dodatne možnosti. V General imamo: Field Size: velikost polja. Pride v poštev pri poljih tipa Text (število znakov), Number in AutoNumber, kjer so možnosti: Byte: 8-bitno celo število Integer: 16-bitno celo število Long Integer: 32-bitno celo število Single: realno število v enojni natančnosti. Double: realno število v dvojni natančnosti. Decimal: Z dodatnima parametroma Precision in Scale določimo število vseh cifer in število decimalk. Replication ID: 128-bitno celo število. To pride v poštev pri polju AutoNumber (ki je lahko tipa Long Integer ali Replication ID) oz. polju, ki je referenca na polje tipa AutoNumber. Podatkovne baze I. del
34
Dodatne lastnosti polja
New Values: način določanja novih vrednosti (za polje AutoNumber) Format: način izpisa podatkov Decimal Places: število decimalnih mest pri izpisu števil Input Mask: vnosna maska Caption: naslov polja (za prikaz v obrazcu) Default Value: privzeta vrednost Validation Rule: pravilo, ki opisuje dovoljene vrednosti Validation Text: besedilo, ki se pokaže v primeru nedovoljene vrednosti Required: ali je polje obvezno ali ga lahko pustimo praznega Allow Zero Length: ali lahko vnesemo prazno besedilo Indexed: ali naj se indeksira po tem polju Dodatne lastnosti, ki so na voljo, so odvisne od tipa polja, zato vse niso na voljo za vse tipe. Podatkovne baze I. del
35
Primarni ključ Primarni ključ (primary key) je polje ali več polj, katerega podatki enolično določajo vsak zapis v tabeli. Primarni ključ ni obvezen, ga pa potrebujemo pri povezovanju tabel. Definiramo ga tako, da označimo eno ali več polj in izberemo meni Edit/Primary Key. Pri zapiranju nove tabele program pogleda, če imamo primarni ključ in če ga ni, predlaga, da doda novo polje tipa Auto Number za primarni ključ. Polja, ki sestavljajo primarni ključ, so označena na levi strani z znakom Podatkovne baze I. del
36
Vnos podatkov Osnovni način vnosa podatkov v tabelo je v obliki preglednice (Datasheet View). Če v oknu Tables dvakrat kliknemo na ustrezno tabelo, se ta prikaže v obliki preglednice, kjer vidimo podatke in lahko dodajamo nove. Med zapisi se lahko sprehajamo tudi v statusni vrstici, kjer se lahko premaknemo na izbrani zapis ali uporabimo gumbe za premik na začetek, konec seznama, predhodnji zapis, naslednji zapis ali na naslednji novi zapis. Zapis na katerem trenutno smo, je na levi označen s trikotnikom. Če smo na koncu tabele, lahko vnesemo nov zapis. Znaki + se pojavijo, kadar smo v glavni tabeli, ki je povezana z drugo tabelo. Če pritisnemo na +, se pojavijo povezani zapisi iz druge tabele. Podatkovne baze I. del
37
Vnos podatkov Zapis označimo tako, da kliknemo na kvadratek pred zapisom. Polja zapisa popravljamo tako, da kliknemo vanje in popravimo vrednost. Ko imamo zapis označen, ga lahko zbrišemo (Edit/Delete) ali pa kopiramo (Edit/Copy, Insert/New Record, Edit/Paste) v nov zapis (to je koristno, če je veliko podatkov enakih, saj jih tako ni potrebno dvakrat vnašati). Podatkovne baze I. del
38
Kazalo Osnove podatkovnih baz Primer načrtovanja podatkovne baze
Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
39
Vrsta vnosnega polja Pri nekaterih tipih podatkov lahko na kartici Lookup izberemo vrsto vnosnega polja (Display Control). Na vrsto imamo: Check Box: potrditveni gumb za logične vrednosti Text Box: polje za vnos besedila List Box: seznam za izbiranje, kjer moramo nujno izbrati iz seznama Combo Box: seznam za izbiranje, kjer lahko vnesemo tudi vrednost, ki je ni na seznamu Podatkovne baze I. del
40
Nastavitve seznama za izbiranje
Row Source Type: izvor vrednosti, med katerimi lahko izbiramo: Table/Query: iz druge tabele ali poizvedbe Value List: predpišemo jih sami Field List: imena polj Row Source: določimo poizvedbo (v obliki stavka SQL ali preko čarovnika) ali naštejemo možne vrednosti Seznam za izbiranje je lahko sestavljen iz več stolpcev: Bound Column: indeks stolpca iz katerega vzamemo vrednost za polje Column Count: število vseh stolpcev Column Heads: imena stolpcev (da ali ne) Column Widths: širine stolpcev Za Combo Box imamo še: List Rows: koliko vrednosti iz seznama se naenkrat pojavi na zaslonu List Width: širina seznama Limit To List: ali mora vrednost biti nujno iz seznama (da ali ne) Podatkovne baze I. del
41
SQL nastavitev seznama za izbiranje
V primeru, ko vrednosti poiščemo iz druge tabele oziroma poizvedbe, v polje Row Source vpišemo polja, ki naj se prikažejo kot vrednosti polja pri izpisu oziroma vnosu. Denimo, da imamo v tabeli stolpec ID Dijak tipa Number, ki je povezava s tabelo Dijaki s stolpci ID Dijak, Ime, Priimek Row Source: SELECT [Dijaki].[ID Dijak], [Dijaki].[Ime]&” “&[Dijaki].[Priimek] FROM [Dijaki]; Bound Column: 1 Column Count: 2 Column Widths: 0cm;5,50cm List Rows: 8 List Width: 6cm Zgornje nastavitve pomenijo, da se v stolpcu kaže ime in priimek dijaka, podatek pa se vsakič pobere iz tabele Dijaki. V bazi je v tabeli na mestu stolpca ID Dijak številka, na zaslonu pa se izpiše ime in priimek, saj je tako nastavljeno na kartici Lookup. Podatkovne baze I. del
42
Povezovanje tabel Povezave med tabelami urejamo v posebnem oknu, ki ga odpremo v menuju Tools/Relationships. Ko okno prvič odpremo, moramo izbrati tabele, med katerimi bodo povezave, pozneje pa jih lahko dodamo z Relationships/Show Table. Vsaka tabela se v oknu pokaže v obliki manjšega okna, v katerem je seznam njenih polj, primarni ključ pa je izpisan krepko. Povezavo vrste ena proti več naredimo tako, da polje tabele na strani ena z miško povlečemo na ustrezno polje tabele na strani več. Pojavi se novo okno, v katerem lahko določimo še ostale lastnosti povezave in jo nato z ukazom Create tudi dokončno naredimo. Povezava se prikaže kot tanka črta med poljema, ki ju povezuje. Podatkovne baze I. del
43
Referenčna integriteta
V oknu za lastnosti povezave lahko izberemo vrsto povezave (Join Type). Če izberemo Enforce Referential Integrity, bo program skrbel za referenčno integriteto povezanih podatkov. V tem primeru ni možno vstaviti zapisa z referenco, ki je ni v glavi tabeli in ni možno odstraniti zapisa iz glavne tabele, če ne odstranimo prej tudi vse povezane zapise v drugih tabelah, razen pri izbiri: Cascade Update Related Fields: ob spremembi primarnega ključa program sam popravi vse reference na ta zapis v povezanih tabelah. Cascade Delete Related Records: pri brisanju zapisa iz glavne tabele program odstrani vse zapise v povezanih tabelah, ki se nanašajo nanj. Podatkovne baze I. del
44
Kako deluje referenčna integriteta
ID Dijak Letnik ID Razred 084 Janez Novak 1990 1 117 Miha Mavec 123 Žan Klopec 1991 3 167 2 ID Razred Razrednik 1 2.a Polona Jan 2 2.b Jasna Cevc 3 1.a Zvone Hiti 4 1.b Karel Nagode V primeru referenčne integritete iz desne tabele ni moč brisati zapisa z ID 2, v levo tabelo pa ne moremo vstaviti ID Razred različen od 1,2,3,4. Če imamo Cascade Update Related Fields in spremenimo v desni tabeli ID iz 2 v 5, se to spremeni tudi v levi tabeli. Če imamo Cascade Delete Related Records in v desni tabeli zbrišemo zapis z ID 2, se v levi tabeli zbrišejo vsi zapisi z ID Razred 2. Podatkovne baze I. del
45
Kazalo Osnove podatkovnih baz Primer načrtovanja podatkovne baze
Microsoft Access Access – priprava baze Access – povezovanje tabel Access – iskanje podatkov in filtri Podatkovne baze I. del
46
Urejanje podatkov Zapise v tabeli lahko uredimo po poljubnem stolpcu.
Najprej označimo stolpec, po katerem želimo urediti podatke (kliknem na ime stolpca) in nato izberemo Records/Sort. Vrstni red je lahko naraščajoč (ascending) ali padajoč (descending). Sama ureditev zapisov na zaslonu ne vpliva na ureditev v tabeli v bazi. Pri večjih tabelah bo urejanje hitrejše, če je stolpec, po katerem urejamo, indeksiran. Podatkovne baze I. del
47
Iskanje podatkov Ko je tabela odprta v obliki preglednice, lahko z izbiro Edit/Find iščemo zapise podobno kot pri ostalih Okenskih programih. Find What: besedilo, ki ga iščemo. Look In: ali iščemo po trenutno označenem polju ali pa po vseh poljih. Match: Možna ujemanja so: Any Part of Field: iskano besedilo je lahko kjerkoli v polju, Whole Field: iskano besedilo se mora točno ujemati z vsebino polja, Start of Field: vsebina polja se začne z iskanim besedilom. Podatkovne baze I. del
48
Zamenjava podatkov Podobno kot iskanje podatkov poteka tudi zamenjava besedila z novim besedilom. Replace With: besedilo, ki zamenja iskano besedilo. Podatkovne baze I. del
49
Filtri Filtre uporabljamo, kadar želimo na zaslonu v preglednici videti le tiste zapise, ki ustrezajo danemu kriteriju. Za zapletenejše kriterije uporabljamo poizvedbe, pri enostavnejših pa si lahko pomagamo s filtri. Najenostavnejši filter je po označenem polju (Filter By Selection), kjer pridejo v poštev tisti zapisi, ki imajo vrednost polja enako vrednosti označenega polja. Dobimo lahko tudi tiste zapise (Filter Excluding Selection), ki imajo različno vrednost polja od vrednosti označenega polja. Če želimo narediti filter po več kot enem polju, uporabimo filter preko obrazca (Filter By Form). Podatkovne baze I. del
50
Zapisi z enako vrednostjo v označenem polju
Označimo polje in izberemo Records/Filter/Filter By Selection. Pokaže se samo tisti del tabele, kjer imajo zapisi enako vrednost označenega polja. Podatkovne baze I. del
51
Zapisi z drugo vrednostjo v označenem polju
Označimo polje in izberemo Records/Filter/Filter Excluding Selection. Pokaže se samo tisti del tabele, kjer imajo zapisi drugačno vrednost označenega polja. Podatkovne baze I. del
52
Zapletenejši filtri Z izbiro Records/Filter/Filter By Form lahko naredimo filter po več kot enem polju. V vsako polje vpišemo iskano vrednost ali pa ga pustimo praznega. Uporabljamo lahko tudi operatorje za primerjavo >,<,=,<=,>= in <>. Več različnih kriterijev lahko združimo v kriterij, ki je izpolnjen, kadar zapis ustreza vsaj enemu izmed kriterijev. Ni možno poiskati zapisa, ki bi ustrezal več kriterijem hkrati. Če želimo npr. poiskati vse zapise, ki imajo vrednost polja med dvema danima vrednostima, moramo uporabiti poizvedbo. Podatkovne baze I. del
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.