You are on page 1of 19

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE

Access 2002.
Tworzenie baz danych
Autor: Bogdan Czogalik
ISBN: 83-7197-897-9
Format: B5, stron: 426

ZAMW DRUKOWANY KATALOG

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Bazy danych nale do najpopularniejszych programw. Student, profesor, sekretarka,


waciciel firmy, lekarz kady potrzebuje bazy danych. Zbuduj relacyjn baz danych
do zarzdzania kolekcj pyt, adresami znajomych, gabinetem lekarskim lub
przedsibiorstwem korzystajc ze znakomitego programu Microsoft Access 2002.
Wielk zalet programu Access 2002, skadnika pakietu Microsoft Office XP, jest to,
e jest on narzdziem do tworzenia zarwno prostych, jak i zoonych baz danych.
Nie bez znaczenia jest rwnie fakt, e baz danych utworzon za pomoc tego
programu, mona w dowolnej chwili rozbudowa lub zmodyfikowa (oczywicie, jeeli
ma si do tego uprawnienia), a nawet przystosowa do pracy z Microsoft SQL Server.
Ksika Access 2002.Tworzenie baz danych przeznaczona zarwno dla
pocztkujcych, jak i dowiadczonych uytkownikw programu Access wyjania, jak
zbudowa relacyjn baz danych z wykorzystaniem narzdzi do wizualnego tworzenia
obiektw baz danych.
W ksice omwiono m.in.:
Tabele, formularze, raporty, makra, strony dostpu do danych
Formanty
Kwerendy wybierajce, krzyowe, tworzce tabele, aktualizujce, doczajce
oraz usuwajce
Tabele i wykresy przestawne
ADOX oraz ADO uniwersalny interfejs dostpu do danych
Asystent pakietu Office
Tworzenie paskw menu, paskw narzdzi i menu kontekstowego
Zabezpieczanie bazy danych
Access 2002 a Internet
Procedury w Visual Basicu suce do automatyzacji dziaania bazy danych
Doczony do ksiki CD-ROM zawiera:
Access 2002 a Internet

Spis treci
Wprowadzenie ................................................................................. 13
Rozdzia 1. Album muzyczny Twoja pierwsza baza danych............................... 17
Tworzenie nowej bazy danych..........................................................................................17
Tworzenie tabeli................................................................................................................18
Atrybuty pl tabeli ......................................................................................................22
Klucz podstawowy......................................................................................................23
Zapisywanie tabeli ......................................................................................................24
Zmiana projektu tabeli ......................................................................................................24
Tworzenie formularza .......................................................................................................25
Zmiana atrybutw formularza.....................................................................................25
Zmiana atrybutw sekcji Szczegy ...........................................................................27
Zapisywanie formularza..............................................................................................28
Formanty .....................................................................................................................29
Domylny styl formantu .............................................................................................29
Dodawanie formantw do formularza ........................................................................33
Kolejno dostpu do formantw ...............................................................................37
Formularz w dziaaniu ................................................................................................39
Zmiana projektu formularza..............................................................................................41

Rozdzia 2. Tworzenie kwerend .......................................................................... 43


Kwerenda wybierajca ......................................................................................................43
Kwerenda parametryczna............................................................................................57
Kwerenda sortujca rekordy w nietypowym porzdku ..............................................59
Kwerenda podsumowujca .........................................................................................60
Kwerenda krzyowa..........................................................................................................62
Kwerenda tworzca tabel ................................................................................................65
Kwerenda aktualizujca ....................................................................................................66
Kwerenda doczajca.......................................................................................................68
Kwerenda usuwajca.........................................................................................................70
Zmiana projektu kwerendy................................................................................................71
Kwerendy a SQL...............................................................................................................71

Rozdzia 3. Relacje w bazie danych.................................................................... 73


Tworzenie tabel bazy danych Biblioteka.......................................................................74
Tworzenie relacji...............................................................................................................75
Tworzenie formularzy .......................................................................................................77
Formularz zwizany z tabel po stronie jeden relacji jeden-do-wielu ....................77
Formularz zwizany z tabel po stronie wiele relacji jeden-do-wielu ....................78
Tworzenie podformularza...........................................................................................80
Formularz z podformularzem w dziaaniu ........................................................................81

Access 2002. Tworzenie baz danych

Rozdzia 4. Tworzenie raportw.......................................................................... 85


Tworzenie prostego raportu ..............................................................................................85
Zmiana atrybutw raportu...........................................................................................86
Zmiana atrybutw sekcji Nagwek strony ................................................................87
Zmiana atrybutw sekcji Szczegy ...........................................................................87
Zmiana atrybutw sekcji Stopka strony......................................................................88
Zapisywanie raportu....................................................................................................88
Dodawanie formantw do raportu ..............................................................................88
Raport w dziaaniu ......................................................................................................90
Zmiana projektu raportu....................................................................................................92
Raport wywietlajcy rekordy w grupach.........................................................................92
Tworzenie grupy w raporcie .......................................................................................92
Raport wywietlajcy rekordy w grupach w dziaaniu ...............................................94
Raport ze stron tytuow i kocow ................................................................................95
Tworzenie strony tytuowej oraz strony kocowej raportu ........................................95
Raport ze stron tytuow i stron kocow w dziaaniu ...........................................96
Raport wykonujcy obliczenia ..........................................................................................97
Tworzenie raportu wykonujcego obliczenia .............................................................98
Raport wykonujcy obliczenia w dziaaniu ..............................................................101

Rozdzia 5. Tabela przestawna i wykres przestawny.......................................... 103


Tabela przestawna ...........................................................................................................103
Tworzenie tabeli przestawnej ...................................................................................103
Obliczanie sum..........................................................................................................107
Tworzenie pola obliczeniowego szczegu ..............................................................107
Modyfikowanie tabeli przestawnej ...........................................................................109
Tabela przestawna w dziaaniu .................................................................................110
Wykres przestawny .........................................................................................................110
Tworzenie wykresu przestawnego............................................................................111
Modyfikowanie wykresu przestawnego ...................................................................114
Obszar roboczy wykresu...........................................................................................115
Tytu..........................................................................................................................115
Legenda.....................................................................................................................115
Obszar krelenia........................................................................................................116
O kategorii...............................................................................................................116
Tytu osi kategorii .....................................................................................................116
O wartoci................................................................................................................116
Tytu osi wartoci......................................................................................................117
Linie siatki ................................................................................................................117
Serie danych..............................................................................................................117
Wykres przestawny w dziaaniu ...............................................................................118
Wybieranie typu wykresu .........................................................................................119

Rozdzia 6. Access 2002 a Visual Basic........................................................... 121


Tworzenie formularza Zdarzenia ....................................................................................121
Zdarzenie Load formularza.......................................................................................122
Zdarzenie Click przycisku polecenia ........................................................................124
Zdarzenie GotFocus pola kombi...............................................................................129
Formularz Zdarzenia w dziaaniu....................................................................................130

Rozdzia 7. acuchy znakw........................................................................... 133


Konkatenacja...................................................................................................................134
Funkcja Asc.....................................................................................................................134
Funkcja Chr .....................................................................................................................135

Spis treci

7
Funkcja Format ...............................................................................................................135
acuchy znakw .....................................................................................................136
Liczby .......................................................................................................................137
Daty i godziny...........................................................................................................138
Funkcja InStr ...................................................................................................................140
Funkcja InStrRev.............................................................................................................141
Funkcja LCase.................................................................................................................142
Funkcja Left ....................................................................................................................143
Funkcja Len.....................................................................................................................143
Funkcja Mid ....................................................................................................................144
Funkcja MonthName.......................................................................................................145
Funkcja Replace ..............................................................................................................145
Funkcja Right ..................................................................................................................146
Funkcja Space .................................................................................................................147
Funkcja StrConv..............................................................................................................147
Funkcja String .................................................................................................................148
Funkcja StrReverse .........................................................................................................149
Funkcja UCase ................................................................................................................149
Funkcja WeekdayName ..................................................................................................150

Rozdzia 8. Matematyka w bazie danych .......................................................... 153


Operatory arytmetyczne i logiczne .................................................................................153
Funkcja Abs.....................................................................................................................155
Funkcja Round ................................................................................................................155
Funkcja Sgn.....................................................................................................................156
Funkcja Sqr .....................................................................................................................156
Inne funkcje matematyczne.............................................................................................157

Rozdzia 9. Daty i godziny................................................................................ 159


Funkcja DateAdd.............................................................................................................159
Funkcja DateDiff.............................................................................................................161
Funkcja DatePart .............................................................................................................162
Funkcja DateSerial ..........................................................................................................164
Funkcja DateValue..........................................................................................................165
Funkcja Day ....................................................................................................................166
Funkcja Hour...................................................................................................................166
Funkcja Minute ...............................................................................................................167
Funkcja Month ................................................................................................................168
Funkcja Second ...............................................................................................................168
Funkcja TimeSerial .........................................................................................................169
Funkcja TimeValue .........................................................................................................169
Funkcja Weekday............................................................................................................170
Funkcja Year ...................................................................................................................171
Instrukcja Date ................................................................................................................171
Funkcja Date ...................................................................................................................172
Instrukcja Time ...............................................................................................................172
Funkcja Time...................................................................................................................173
Funkcja Now ...................................................................................................................173
Funkcja Timer .................................................................................................................174

Rozdzia 10. Kolory i grafika .............................................................................. 175


Funkcja QBColor oraz funkcja RGB ..............................................................................175
Tworzenie formularza Kolory.........................................................................................176
Wstawianie obrazw do formularzy, raportw i formantw ..........................................179
Obrazy w formularzach.............................................................................................179
Obrazy w raportach...................................................................................................180
Obrazy w formantach................................................................................................180

Access 2002. Tworzenie baz danych

Rozdzia 11. Visual Basic od podszewki ............................................................. 183


Moduy ............................................................................................................................183
Tworzenie moduu standardowego ...........................................................................183
Zapisywanie moduu standardowego........................................................................183
Otwieranie moduu standardowego ..........................................................................184
Typy procedur .................................................................................................................184
Tworzenie podprogramu .................................................................................................186
Wywoywanie podprogramu ...........................................................................................188
Tworzenie funkcji ...........................................................................................................189
Wywoywanie funkcji .....................................................................................................191
Procedura z parametrami opcjonalnymi..........................................................................192
Zmienne...........................................................................................................................193
Stae.................................................................................................................................196
Instrukcja ForNext.......................................................................................................198
Instrukcja DoLoop.......................................................................................................199
Instrukcja DoLoop ze sowem kluczowym While i warunkiem na jej pocztku .199
Instrukcja DoLoop ze sowem kluczowym While i warunkiem na jej kocu ......200
Instrukcja DoLoop ze sowem kluczowym Until i warunkiem na jej pocztku ...201
Instrukcja DoLoop ze sowem kluczowym Until i warunkiem na jej kocu........202
Instrukcja Select Case .....................................................................................................203
Instrukcja IfThenElse ..............................................................................................204
Funkcja IIf .......................................................................................................................205
Funkcja Choose ...............................................................................................................206
Funkcja Switch................................................................................................................207
Tablice.............................................................................................................................208
Tablica o rozmiarze staym.......................................................................................208
Tablica o rozmiarze dynamicznym...........................................................................210
Funkcja LBound........................................................................................................212
Funkcja UBound .......................................................................................................213
Procedura ze zmienn liczb argumentw ......................................................................214
Funkcja Split ...................................................................................................................215
Funkcja Join ....................................................................................................................216
Funkcja Filter ..................................................................................................................217
Instrukcja WithEnd With ............................................................................................218
Kolekcja ..........................................................................................................................219
Metoda Add ..............................................................................................................220
Metoda Count............................................................................................................220
Metoda Item ..............................................................................................................220
Metoda Remove ........................................................................................................220
Instrukcja For EachNext .......................................................................................221
Instrukcja Exit .................................................................................................................223
Instrukcja Exit Sub....................................................................................................223
Instrukcja Exit Function............................................................................................223
Instrukcja Exit For ....................................................................................................224
Instrukcja Exit Do .....................................................................................................224
Niestandardowe typy danych ..........................................................................................225
Komentarz .......................................................................................................................227
Znak kontynuacji wiersza kodu.......................................................................................228
Dwa sposoby przekazywania argumentw do procedury ...............................................229

Rozdzia 12. ADOX oraz ADO interfejs dostpu do danych .............................. 231
Dodawanie referencji do zbioru obiektw ADOX..........................................................231
Tworzenie tabeli..............................................................................................................233
Tworzenie klucza podstawowego ...................................................................................235

Spis treci

9
Usuwanie tabeli ...............................................................................................................237
Dodawanie rekordu .........................................................................................................237
Edytowanie rekordu ........................................................................................................241
Usuwanie rekordu ...........................................................................................................242
Wyszukiwanie rekordw.................................................................................................244
Liczenie rekordw...........................................................................................................246
Wywietlanie zbioru rekordw .......................................................................................247
Sortowanie rekordw ......................................................................................................248
Filtrowanie rekordw ......................................................................................................250
Tworzenie tabeli klucza obcego......................................................................................252
Tworzenie relacji.............................................................................................................254
Tworzenie kwerendy .......................................................................................................255
ActiveX Data Objects w bazie danych Biblioteka ......................................................258
Dodanie klucza obcego do tabeli tblAutorzy............................................................258
Tworzenie tabeli tblKraje .........................................................................................259
Tworzenie relacji ......................................................................................................260
Tworzenie kwerendy.................................................................................................261
Modyfikowanie formularza frmAutorzy...................................................................261
Kod odpowiedzialny za aktualizacj zawartoci pola kombi ...................................263
Biblioteka w dziaaniu ..............................................................................................265
Formularz do usuwania elementw z pola kombi...........................................................266
Tworzenie formularza do usuwania elementw z pola kombi .................................266
Formularz do usuwania elementw z pola kombi w dziaaniu.................................267

Rozdzia 13. Okna komunikatw ........................................................................ 269


Funkcja MsgBox .............................................................................................................269
Instrukcja MsgBox ..........................................................................................................273
Okna komunikatw w bazie danych Biblioteka ..........................................................274
Zastpowanie wbudowanych okien komunikatw niestandardowymi...........................277

Rozdzia 14. Filtrowanie rekordw ..................................................................... 289


Filtrowanie rekordw wywietlanych w formularzu ......................................................289
Tworzenie tabeli bazy danych ..................................................................................289
Tworzenie formularza bazy danych..........................................................................290
Filtrowanie wedug formularza.................................................................................293
Filtrowanie wedug wyboru ......................................................................................301
Filtrowanie z wyczeniem wyboru ..........................................................................303
Filtrowanie zaawansowane .......................................................................................305
Zapisywanie filtru jako kwerendy ............................................................................307
Zaadowanie filtru z kwerendy .................................................................................307
Sortowanie rekordw ................................................................................................307
Filtrowanie rekordw wywietlanych w raporcie ...........................................................308
Tworzenie kwerendy.................................................................................................308
Tworzenie formularza sucego do ustawiania filtru raportu .................................310
Kod formularza sucego do ustawiania filtru raportu............................................311
Formularz sucy do ustawiania filtru raportu w dziaaniu.....................................314

Rozdzia 15. Usprawnianie bazy danych ............................................................. 317


Formatowanie danych wywietlanych w polach tekstowych .........................................317
Typ danych Tekst lub Nota.......................................................................................318
Typ danych Liczba lub Walutowy............................................................................318
Typ danych Data/Godzina ........................................................................................319
Typ danych Tak/Nie .................................................................................................319
Tworzenie masek wprowadzania danych........................................................................321
Warto domylna ...........................................................................................................322

10

Access 2002. Tworzenie baz danych


Formaty, maska wprowadzania danych oraz warto domylna w dziaaniu.................322
Tworzenie tabeli bazy danych ..................................................................................323
Tworzenie formularzy bazy danych..........................................................................323
Kod bazy danych.......................................................................................................326
Baza danych w dziaaniu ..........................................................................................328
Kompaktowanie bazy danych .........................................................................................329

Rozdzia 16. Asystent pakietu Office.................................................................. 331


Wybieranie postaci i animacji Asystenta pakietu Office ................................................331
Posta Asystenta pakietu Office ...............................................................................331
Animacja Asystenta pakietu Office ..........................................................................332
Dymek Asystenta pakietu Office ..............................................................................332
Asystent pakietu Office w dziaaniu ...............................................................................334
Asystent pakietu Office a zdarzenia formularza i formantw.........................................347

Rozdzia 17. Makra ........................................................................................... 349


Akcja OknoKomunikatu .................................................................................................349
Akcja Minimalizuj...........................................................................................................351
Akcja Zamknij.................................................................................................................351
Akcja Zakocz.................................................................................................................352
Makro z warunkami ........................................................................................................353
Makra a zdarzenia formularza, raportu i formantw.......................................................355
Makra w dziaaniu...........................................................................................................356
Zmiana projektu makra ...................................................................................................357
Makro AutoExec .............................................................................................................357

Rozdzia 18. Tworzenie paska menu, paska narzdzi oraz menu kontekstowego .. 359
Tworzenie niestandardowego paska menu......................................................................359
Tworzenie pustego paska menu ................................................................................360
Tytuy niestandardowego paska menu......................................................................362
Tworzenie niestandardowego paska narzdzi .................................................................371
Tworzenie pustego paska narzdzi ...........................................................................372
Przyciski niestandardowego paska narzdzi.............................................................372
Tworzenie grup przyciskw......................................................................................380
Tworzenie niestandardowego menu kontekstowego.......................................................381
Tworzenie pustego menu kontekstowego.................................................................381
Elementy niestandardowego menu kontekstowego ..................................................382
Tworzenie grup elementw.......................................................................................386
czenie menu kontekstowego z formularzem lub formantem ................................386
Okno dialogowe Uruchamianie.......................................................................................387
Niestandardowy system menu bazy danych Biblioteka w dziaaniu...........................388
Otwieranie bazy danych z pominiciem ustawie okna dialogowego Uruchamianie ....389

Rozdzia 19. Zabezpieczanie bazy danych........................................................... 391


Tworzenie grupy roboczej...............................................................................................392
Zmiana hasa standardowego administratora ..................................................................394
Tworzenie nowego administratora ..................................................................................394
Usunicie standardowego administratora z grupy Administratorzy
i przypisanie hasa do nowego administratora..............................................................396
Zabezpieczanie bazy danych Biblioteka......................................................................398
Tworzenie dodatkowych grup.........................................................................................402
Tworzenie dodatkowych uytkownikw ........................................................................402
Przypisywanie uprawnie do grupy ................................................................................403
Przypisywanie uytkownikw do grupy .........................................................................406
Zabezpieczanie kodu VB bazy danych ...........................................................................406

Spis treci

11
Zabezpieczona baza danych Biblioteka w dziaaniu ...................................................407
Usunicie pliku informacyjnego grupy roboczej
zabezpieczajcego baz danych Biblioteka ........................................................410
Ponowna aktywacja pliku informacyjnego grupy roboczej
zabezpieczajcego baz danych Biblioteka ........................................................410

Rozdzia 20. Access 2002 a Internet strony dostpu do danych ..................... 411
Formanty strony dostpu do danych ...............................................................................411
rdo rekordw strony dostpu do danych....................................................................411
Tworzenie strony dostpu do danych..............................................................................413
Atrybuty strony dostpu do danych ................................................................................414
Nagwek strony dostpu do danych ..............................................................................415
Pola strony dostpu do danych........................................................................................415
Formant Nawigacja po rekordach ...................................................................................416
Hipercza na stronach dostpu do danych .....................................................................418
Hipercze z tekstem .................................................................................................418
Hipercze z obrazem................................................................................................418
Tekst przewijany (neon)..................................................................................................419
Strona dostpu do danych w dziaaniu............................................................................420

Skorowidz...................................................................................... 421

Rozdzia 3.

Relacje w bazie danych


Baza danych Album muzyczny zbudowana w rozdziale 1., Album muzyczny
Twoja pierwsza baza danych, ma jedn wad: nie mona do niej wprowadzi danych
o piosenkach piewanych przez piosenkarzy. Aby rozwiza ten problem, nie wystarczy doda pole Piosenka do tabeli tblPiosenkarze, pole tekstowe txtPiosenka do formularza frmPiosenkarze i zwiza ze sob oba pola. Gdyby tak zrobi, ilekro chciaby
doda now piosenk do bazy danych, musiaby wpisa imi i nazwisko piosenkarza
oraz wskaza wykonywany przez niego gatunek muzyki, nawet jeeli dane o piosenkarzu znajdowayby si ju w bazie danych. Zawarto tabeli tblPiosenkarze z polem
Piosenka wygldaaby jak pokazano na rysunku 3.1.
Rysunek 3.1.
Zawarto tabeli
tblPiosenkarze
z polem Piosenka

Midzy piosenkarzem a jego piosenkami istnieje relacja jeden-do-wielu: jeden piosenkarz wykonuje wiele piosenek. Relacja jeden-do-wielu istnieje rwnie midzy autorem
a jego dzieami (jeden autor moe by twrc wielu dzie) oraz midzy klientami firmy
a zoonymi przez nich zamwieniami (jeden klient moe zoy wiele zamwie).
Aby wyjani sposb tworzenia i dziaania relacji jeden-do-wielu, zbudujemy baz danych Biblioteka suc do przechowywania danych o autorach i ich dzieach. Rwnie dobrze mogaby to by baza danych do przechowywania danych o piosenkarzach
i ich piosenkach lub o klientach firmy i zoonych przez nich zamwieniach.
Uruchom program Access, utwrz now baz danych i nadaj jej nazw  .

74

Access 2002. Tworzenie baz danych

Tworzenie tabel
bazy danych Biblioteka
Baza danych Biblioteka bdzie zawiera tabel tblAutorzy (rysunek 3.2) do przechowywania danych o autorach oraz tabel tblDziea (rysunek 3.3) do przechowywania danych o ich dzieach. Tabele bd poczone relacj jeden-do-wielu.
Rysunek 3.2.
Schemat tabeli
tblAutorzy
Rysunek 3.3.
Schemat tabeli
tblDziea
1. Utwrz tabel tblAutorzy w widoku projektu (rysunek 3.4). Tabela ta skada si

z czterech pl: IDautora (typ danych Autonumerowanie), Imi (typ danych Tekst),
Nazwisko (typ danych Tekst) oraz NagrodaNobla (typ danych Tak/Nie).
Rysunek 3.4.
Tabela tblAutorzy
w widoku projektu

Pole IDautora ustaw jako klucz podstawowy. W sekcji Waciwoci pola atrybut
Rozmiar pola pola Imi ustaw na warto 10, atrybut Rozmiar pola pola Nazwisko
na warto 20, a atrybut Warto domylna pola NagrodaNobla ustaw
na warto Nie.
2. Utwrz tabel tblDziea w widoku projektu (rysunek 3.5). Tabela ta skada si

z czterech pl: IDdziea (typ danych Autonumerowanie), Tytu (typ danych Tekst),
Gatunek (typ danych Tekst) oraz IDautora (typ danych Liczba).
Pole IDdziea ustaw jako klucz podstawowy. W sekcji Waciwoci pola atrybut
Rozmiar pola pola Gatunek ustaw na warto 15.
Pole IDautora tabeli tblDziea bdzie jej kluczem obcym, co oznacza, e bdzie
ono poczone z kluczem podstawowym (polem IDautora) tabeli tblAutorzy.
Klucz podstawowy tabeli tblAutorzy ma tak sam nazw jak klucz obcy tabeli
tblDziea (nie jest to jednak wymg). Jeeli klucz podstawowy ma typ danych
Autonumerowanie, klucz obcy musi mie typ danych Liczba.
Zapisz i zamknij tabel tblAutorzy oraz tblDziea.

Rozdzia 3. Relacje w bazie danych

75

Rysunek 3.5.
Tabela tblDziea
w widoku projektu

Tworzenie relacji
Po utworzeniu tabel tblAutorzy oraz tblDziea naley utworzy midzy nimi relacj, a dokadnie mwic, midzy kluczem podstawowym tabeli tblAutorzy (polem IDautora)
a kluczem obcym tabeli tblDziea (polem IDautora).
1. Z menu Narzdzia wybierz pozycj Relacje (rysunek 3.6) lub kliknij przycisk

Relacje na pasku narzdzi Baza danych.


Rysunek 3.6.
Z menu Narzdzia
wybierz pozycj
Relacje

Otworzy si okno Relacje oraz okno dialogowe Pokazywanie tabeli. Jeeli okno
dialogowe Pokazywanie tabeli nie otworzy si, prawym przyciskiem myszy
kliknij okno Relacje i z menu kontekstowego wybierz pozycj Poka tabel.
2. W oknie dialogowym Pokazywanie tabeli zaznacz tabel tblAutorzy i kliknij

przycisk Dodaj, zaznacz tabel tblDziea i kliknij przycisk Dodaj, a nastpnie


kliknij przycisk Zamknij.
Okno Relacje wywietli list pl tabeli tblAutorzy oraz list pl tabeli tblDziea
(rysunek 3.7). Nazwy pl kluczy podstawowych maj pogrubion czcionk.
3. Aby utworzy relacj midzy tabel tblAutorzy a tabel tblDziea, umie

wskanik myszy nad polem IDautora tabeli tblAutorzy, nacinij lewy przycisk
myszy i przecignij wskanik do pola IDautora tabeli tblDziea.
Otworzy si okno dialogowe Edytowanie relacji. W oknie tym zaznacz pole
wyboru Wymuszaj wizy integralnoci i kliknij przycisk Utwrz (rysunek 3.8).

76

Access 2002. Tworzenie baz danych

Rysunek 3.7.
Okno Relacje
wywietla list pl
tabeli tblAutorzy
oraz list pl tabeli
tblDziea

Rysunek 3.8.
Okno dialogowe
Edytowanie relacji

Wizy integralnoci to system regu dbajcy o prawidowo zwizkw midzy


rekordami tabel powizanych relacj i chronicy przed przypadkowym
usuniciem powizanych danych.
Midzy tabelami pojawi si linia sprzenia czca klucz podstawowy tabeli
tblAutorzy z kluczem obcym tabeli tblDziea (rysunek 3.9). Tabela tblAutorzy
znajduje si po stronie jeden, a tabela tblDziea po stronie wiele relacji
jeden-do-wielu.
Rysunek 3.9.
Linia sprzenia czy
klucz podstawowy
tabeli tblAutorzy
z kluczem obcym
tabeli tblDziea

4. Aby zamkn okno Relacje, kliknij jego przycisk X (prawy grny rg).

Jeeli Access zapyta, czy chcesz zapisa zmiany, kliknij przycisk Tak.

Rozdzia 3. Relacje w bazie danych

77

Tworzenie formularzy
Jeeli baza danych zawiera dwie tabele, midzy ktrymi istnieje relacja jeden-do-wielu,
do wprowadzania i edytowania danych mona utworzy formularz z podformularzem.
Podformularz tworzy si tak samo jak formularz, a potem dodaje si go do formularza
nadrzdnego. Zaczynamy wic od utworzenia formularza frmAutorzy zwizanego z tabel tblAutorzy oraz formularza frmDziea zwizanego z tabel tblDziea.
Pamitaj, e przed dodaniem do formularza formantu, moesz zdefiniowa jego styl
domylny (zobacz rozdzia 1., Album muzyczny Twoja pierwsza baza danych).
Jeeli tego nie zrobisz, formant bdzie mia standardowy wygld nadany mu przez
twrcw programu Access np. atrybut Efekt specjalny pola tekstowego bdzie ustawiony na warto Wklsy, atrybut Styl obramowania na warto Przezroczysty, atrybut Kolor obramowania na warto 0 (czarny), a atrybut Autoetykieta na warto Tak.
Jeeli atrybut Autoetykieta pola tekstowego lub innego formantu jest ustawiony na warto
Tak, nowo utworzony formant posiada etykiet ze standardowym tekstem.
Aby usun etykiet lub inny formant, zaznacz go i nacinij klawisz Delete.

Formularz zwizany z tabel


po stronie jeden relacji jeden-do-wielu
Upewnij si, e jest wywietlona karta Formularze okna bazy danych i kliknij dwa razy
opcj Utwrz formularz w widoku projektu. Otworzy si okno projektowe nowego formularza.
1. Kliknij selektor formularza i w arkuszu atrybutw atrybut Tytu ustaw na warto

Biblioteka, atrybut Allow Datasheet View na warto Nie, atrybut Allow


PivotTable View na warto Nie, atrybut Allow PivotChart View na warto Nie,
atrybut Paski przewijania na warto aden, atrybut Linie podziau na warto
Nie, atrybut Autorodkowanie na warto Tak, atrybut Styl obramowania
na warto Cienki, atrybut Przyciski Min Maks na warto Min wczony, atrybut
Szeroko na warto 12cm, atrybut rdo rekordw na warto tblAutorzy,
a atrybut Menu skrtw na warto Nie.
Najwaniejszym atrybutem formularza jest rdo rekordw, dziki ktremu
formularz mona zwiza ze rdem danych w tym przypadku z tabel
tblAutorzy.
2. Kliknij selektor sekcji Szczegy formularza i w arkuszu atrybutw atrybut

Wysoko ustaw na warto 6cm, a atrybut Kolor ta na warto 16777215 (biay).


3. Dodaj do formularza pole tekstowe, nadaj mu nazw txtImi (atrybut Nazwa

ustaw na warto txtImi), zwi go z polem Imi (atrybut rdo formantu


ustaw na warto Imi) i ustaw jego atrybut Tekst etykietki formantu na warto
Wpisz imi autora. Dodaj do formularza drugie pole tekstowe, nadaj mu nazw
txtNazwisko (atrybut Nazwa ustaw na warto txtNazwisko), zwi go z polem
Nazwisko (atrybut rdo formantu ustaw na warto Nazwisko) i ustaw jego

78

Access 2002. Tworzenie baz danych

atrybut Tekst etykietki formantu na warto Wpisz nazwisko autora. Dodaj


do formularza pole wyboru, nadaj mu nazw pwbNobel (atrybut Nazwa ustaw
na warto pwbNobel), zwi go z polem NagrodaNobla (atrybut rdo
formantu ustaw na warto NagrodaNobla) i ustaw jego atrybut Tekst etykietki
formantu na warto Zaznacz to pole, jeeli autor jest laureatem nagrody Nobla.
Dodaj etykietki opisujce pole tekstowe txtImi, pole tekstowe txtNazwisko
oraz pole wyboru pwbNobel i rozmie je tak, jak pokazano na rysunku 3.10.
Rysunek 3.10.
Formularz frmAutorzy
w widoku projektu

4. Zapisz formularz pod nazw


  i zamknij go.

Formularz zwizany z tabel


po stronie wiele relacji jeden-do-wielu
Upewnij si, e jest wywietlona karta Formularze okna bazy danych i kliknij dwa razy
opcj Utwrz formularz w widoku projektu. Otworzy si okno projektowe nowego formularza.
1. Kliknij selektor formularza i w arkuszu atrybutw atrybut Widok domylny ustaw

na warto Arkusz danych, atrybut Allow Form View na warto Nie, atrybut
Allow Datasheet View na warto Tak, atrybut Allow PivotTable View na warto
Nie, atrybut Allow PivotChart View na warto Nie, atrybut Przyciski nawigacyjne
na warto Nie, atrybut Linie podziau na warto Nie, atrybut Styl obramowania
na warto Cienki, atrybut rdo rekordw na warto tblDziea, a atrybut
Menu skrtw na warto Nie.
Najwaniejszym atrybutem formularza jest rdo rekordw, dziki ktremu
formularz mona zwiza ze rdem danych w tym przypadku z tabel
tblDziea.
2. Dodaj do formularza pole tekstowe, nadaj mu nazw txtTytu (atrybut Nazwa

ustaw na warto txtTytu) i zwi go z polem Tytu (atrybut rdo formantu


ustaw na warto Tytu). Dodaj do formularza etykiet, wpisz tekst  i ustaw
jej atrybut Nazwa na warto etkTytu. Zaznacz etykiet etkTytu i nacinij

Rozdzia 3. Relacje w bazie danych

79

kombinacj klawiszy Ctrl+X, aby j wyci. Zaznacz pole tekstowe txtTytu


i nacinij kombinacj klawiszy Ctrl+V, aby wyklei etykiet i skojarzy j
z polem tekstowym txtTytu. Operacja ta jest potrzebna, aby pierwsza kolumna
arkusza wywietlaa nagwek , a nie .
3. Dodaj do formularza pole kombi, nadaj mu nazw lrwGatunek (atrybut Nazwa

ustaw na warto lrwGatunek) i zwi go z polem Gatunek (atrybut rdo


formantu ustaw na warto Gatunek). Dodaj do formularza etykiet, wpisz tekst
  i ustaw jej atrybut Nazwa na warto etkGatunek. Zaznacz etykiet
etkGatunek i nacinij kombinacj klawiszy Ctrl+X, aby j wyci. Zaznacz
pole kombi lrwGatunek i nacinij kombinacj klawiszy Ctrl+V, aby wyklei
etykiet i skojarzy j z polem kombi lrwGatunek. Operacja ta jest potrzebna,
aby druga kolumna arkusza wywietlaa nagwek  , a nie   .
4. Atrybut Typ rda wierszy pola kombi lrwGatunek ustaw na warto Lista

wartoci, atrybut rdo wierszy ustaw na warto Nowela;Opowiadanie;


Poezja;Powie;Sztuka, a atrybut Ogranicz do listy ustaw na warto Tak.
5. Zapisz formularz pod nazw
 i zamknij go (rysunek 3.11).
Rysunek 3.11.
Formularz frmDziea
w widoku projektu

6. Aby otworzy (uruchomi) formularz frmDziea, zaznacz jego nazw na karcie

Formularze okna bazy danych i kliknij przycisk Otwrz na pasku narzdzi


tego okna. Formularz frmDziea ma wygld arkusza danych jest to efekt
ustawienia atrybutu formularza Widok domylny na warto Arkusz danych
(rysunek 3.12).
Rysunek 3.12.
Formularz frmDziea
ma wygld arkusza
danych

Pierwsza kolumna arkusza danych ma nagwek Tytu, druga Gatunek. Porzdek


kolumn formularza w widoku arkusza danych zaley od kolejnoci dostpu
do formantw ustawionej w oknie dialogowym Kolejno dostpu.
Aby wywietli kolumny w porzdku Gatunek, Tytu, otwrz formularz
w widoku projektu, z menu Widok wybierz pozycj Kolejno dostpu i w oknie
dialogowym Kolejno dostpu ustaw odpowiedni kolejno formantw (zobacz
rozdzia 1., Album muzyczny Twoja pierwsza baza danych).

80

Access 2002. Tworzenie baz danych


7. Aby zmieni krj i rozmiar czcionki formularza frmDziea, umie kursor

w jednym z jego pl i z listy rozwijanej Czcionka na pasku narzdzi wybierz


czcionk Tahoma, a z listy rozwijanej Rozmiar czcionki warto 8. Zamknij
formularz frmDziea (nie wpisuj do niego adnych danych).

Tworzenie podformularza
Baza danych Biblioteka zawiera teraz formularz frmAutorzy zwizany z tabel tblAutorzy (jest to tabela po stronie jeden relacji jeden-do-wielu) oraz formularz frmDziea
zwizany z tabel tblDziea (jest to tabela po stronie wiele relacji jeden-do-wielu).
1. Aby utworzy podformularz, upewnij si, e formularz frmDziea jest zamknity,

otwrz formularz frmAutorzy w widoku projektu, rozmie okno bazy danych


oraz okno projektowe formularza frmAutorzy tak, aby oba byy widoczne
i przecignij ikon reprezentujc formularz frmDziea z okna bazy danych
na formularz frmAutorzy.
Access doda do formularza frmAutorzy podformularz: jest nim formularz
frmDziea umieszczony w formancie podformularz. Po dodaniu podformularza
rozmiar formularza frmAutorzy moe zosta zmieniony. Za pomoc wskanika
myszy dostosuj rozmiar podformularza, a nastpnie ustaw rozmiar formularza.
2. Aby zmodyfikowa atrybuty podformularza, zaznacz (kliknij) go i otwrz

arkusz atrybutw (nacinij klawisz F4).


Kiedy podformularz jest zaznaczony, arkusz atrybutw wywietla tytu
Podformularz/Podraport (rysunek 3.13).
Rysunek 3.13.
Atrybuty
podformularza

3. Atrybut Lewy podformularza ustaw na warto 3cm, atrybut Grny na warto

2,5cm, atrybut Szeroko na warto 8cm, atrybut Wysoko na warto 3cm,


atrybut Efekt specjalny na warto Paski, a atrybut Kolor obramowania
na warto 16711680.
4. Z lewej strony podformularza dodaj etykietk z napisem  (rysunek 3.14).
5. Zapisz i zamknij formularz frmAutorzy.

Rozdzia 3. Relacje w bazie danych

81

Rysunek 3.14.
Formularz frmAutorzy
z podformularzem
(formularzem
frmDziea)

Formularz z podformularzem w dziaaniu


Aby uruchomi formularz frmAutorzy, zaznacz jego nazw na karcie Formularze okna
bazy danych i kliknij przycisk Otwrz na pasku narzdzi tego okna. Otworzy si formularz frmAutorzy (rysunek 3.15).
Rysunek 3.15.
Formularz
z podformularzem
w dziaaniu

Aby zmodyfikowa szeroko kolumn podformularza, umie wskanik myszy nad lini
rozdzielajc nagwek Tytu od nagwka Gatunek (wskanik przyjmie posta dwukierunkowej strzaki), nacinij lewy przycisk myszy i przecignij w lewo lub w prawo
(rysunek 3.16).
Rysunek 3.16.
Zmiana szerokoci
kolumn podformularza

Wpisz imi autora w polu tekstowym Imi, np.  , i nacinij klawisz Tab, aby
przej do nastpnego pola. Wpisz nazwisko autora w polu tekstowym Nazwisko, np.
  , i nacinij klawisz Tab, aby przej do pola wyboru Nagroda Nobla?. Nacinij spacj, aby zaznaczy pole wyboru (William Faulkner otrzyma nagrod Nobla

82

Access 2002. Tworzenie baz danych

w 1949), a nastpnie nacinij klawisz Tab, aby przej do pola Tytu podformularza.
Wpisz tytu, np.   , nacinij klawisz Tab, aby przej do pola Gatunek, i z listy rozwijanej wybierz jeden z gatunkw, np. Powie (rysunek 3.17).
Rysunek 3.17.
Rekord podczas edycji

Teraz moesz doda nastpny tytu do biecego autora lub utworzy rekord dla nowego autora.
Lista rozwijana Gatunek wywietla wartoci: Nowela, Opowiadanie, Poezja, Powie
oraz Sztuka (rysunek 3.18) jest to efekt przypisania tych wartoci do atrybutu rdo wierszy pola kombi lrwGatunek.
Rysunek 3.18.
Lista rozwijana
Gatunek

Aby usun biecy rekord, kliknij selektor rekordu i nacinij klawisz Delete.
W przypadku prby usunicia rekordu nadrzdnego posiadajcego co najmniej jeden
rekord podrzdny, Access wywietli komunikat, e nie mona usun rekordu nadrzdnego powizanego z rekordem lub rekordami podrzdnymi (rysunek 3.19). Jest to efekt
zaznaczenia pola wyboru Wymuszaj wizy integralnoci okna dialogowego Edytowanie
relacji (rysunek 3.8).
Rysunek 3.19.
Nie mona usun
rekordu nadrzdnego
posiadajcego
co najmniej jeden
rekord podrzdny

Rekord nadrzdny jest przechowywany w tabeli po stronie jeden relacji jeden-do-wielu w tym przypadku jest on przechowywany w tabeli tblAutorzy i wywietlany
w formularzu frmAutorzy. Rekord podrzdny jest przechowywany w tabeli po stronie
wiele relacji jeden-do-wielu w tym przypadku jest on przechowywany w tabeli
tblDziea i wywietlany w podformularzu (formularzu frmDziea).

Rozdzia 3. Relacje w bazie danych

83

Aby usun rekord nadrzdny, najpierw trzeba usun jego rekordy podrzdne. Aby usun rekord podrzdny, kliknij jego selektor (szary prostokt na lewo od pierwszej kolumny arkusza danych) i nacinij klawisz Delete.
Aby mona byo usun rekord nadrzdny posiadajcy rekord lub zbir rekordw podrzdnych, upewnij si, e wszystkie tabele i formularze s zamknite, otwrz okno Relacje (z menu Narzdzia wybierz pozycj Relacje), prawym przyciskiem myszy kliknij
lini sprzenia czc tabel tblAutorzy z tabel tblDziea, z menu kontekstowego
wybierz pozycj Edytuj relacj (rysunek 3.20), w oknie dialogowym Edytowanie relacji
zaznacz pole wyboru Kaskadowo usu rekordy pokrewne i kliknij przycisk OK.
Rysunek 3.20.
Aby otworzy
okno dialogowe
Edytowanie relacji,
wybierz pozycj
Edytuj relacj

Funkcja kaskadowego usuwania rekordw pokrewnych moe spowodowa przypadkowe usunicie powizanych danych, dlatego nie bdziemy jej stosowa w bazach danych prezentowanych w tej ksice.
Jeeli w oknie dialogowym Edytowanie relacji zaznaczysz pole wyboru Kaskadowo
aktualizuj pola pokrewne, ilekro zmodyfikujesz warto klucza podstawowego tabeli
po stronie jeden relacji jeden-do-wielu, Access zaktualizuje warto klucza obcego
tabeli po stronie wiele relacji jeden-do-wielu.
Funkcja ta jest przydatna w przypadku klucza podstawowego, ktry mona modyfikowa, np. wtedy, gdy kluczem podstawowym jest pole z numerem PESEL. Jednak tabela
tblAutorzy posiada klucz podstawowy, ktrego warto jest generowana automatycznie. Jeeli pole klucza podstawowego tabeli po stronie jeden relacji jeden-do-wielu
ma typ danych Autonumerowanie, nie ma potrzeby zaznacza pola wyboru Kaskadowo
aktualizuj pola pokrewne.
Informacje o zastpowaniu wbudowanych komunikatw bardziej przyjaznymi zawiera rozdzia 13., Okna komunikatw.

You might also like