3. Wprowadzenie
W celu zapoznania się z systemem Acess oraz w celu pokazania jak należy projektować bazy
danych tworzymy bazę danych zawierającą informacje na temat szkoły: (uczniów,
nauczycieli, klas, ocen, przedmiotów).
5. Tabele
- Tabela UCZEŃ do przechowywania danych o uczniu,
- Tabela NAUCZYCIELE do przechowywania danych o nauczycielach uczących w szkole,
- Tabela KLASA zawierająca podstawowe informacje na temat klasy,
- Tabela PRZEDMIOTY do przechowywania nazw przedmiotów,
- Tabela UCZY do przechowywania informacji o tym, który nauczyciel jakiego przedmiotu
w jakiej klasie uczy,
- Tabela OCENY do przechowywania ocen cząstkowych dla każdego ucznia z każdego
przedmiotu,
- Tabela SKALA OCEN do przekształcania oceny cyfrowej na ocenę słowną.
6. Typy danych
Tabela UCZEŃ będzie zawierać następujące pola:
- Identyfikator – unikatowy numer ucznia w szkole – typ autonumer,
- Imię - pole tekstowe o długości 25 znaków,
- Nazwisko – pole tekstowe o długości 30 znaków,
- Klasa – do przechowywania nazwy klasy do której w danym roku chodzi uczeń – pole
tekstowe o długości 10 znaków,
- Data urodzenia – pole typu data/godzina – data krótka,
- Miejsce urodzenia – pole tekstowe o długości 30 znaków,
- Imiona rodziców – pole tekstowe o długości 50 znaków,
- Miejsce zamieszkania – pole tekstowe długości 50 znaków,
- Dojeżdża – pole zawierające odpowiedź na pytanie czy uczeń dojeżdża do szkoły – pole
logiczne tak/nie,
- Mieszka – pole zawierające informację gdzie mieszka uczeń 1 – w domu, 2 – w internacie,
3 – na stancji – pole liczbowe bajt,
- Zdjęcie – pole OLE
Tabela KLASA będzie zawierać następujące pola:
- Klasa – do przechowywania nazw klas istniejących w szkole – pole tekstowe o dł. 10
znaków,
- Specjalność – do przechowywania nazw specjalności danej klasy – pole tekstowe o dł. 30
znaków,
- Id_nauczyciela – do przechowywania identyfikatora nauczyciela będącego wychowawcą
w danej klasie – pole tekstowe o dł. 5 znaków,
Tabela NAUCZYCIELE będzie zawierać następujące pola:
- Id_ nauczyciela – inicjały nauczyciela – pole o dł. 5 znaków,
- Imię – pole tekstowe 20 znaków,
- Nazwisko – pole tekstowe 30 znaków,
Tabela PRZEDMIOTY będzie zawierać następujące pola:
- Id_przedmiotu – pole tekstowe 10 znaków,
- Nazwa przedmiotu – pole tekstowe 40 znaków,
Tabela UCZY będzie zawierać następujące pola:
- Id_nauczyciela – pole tekstowe 5 znaków,
- Id_przedmiotu – pole tekstowe 10 znaków,
- Klasa – pole tekstowe o dł. 10 znaków,
- Ile godzin – pole liczba bajtów,
7. Tabela OCENY będzie zawierać następujące pola:
- Id_ucznia – pole typu liczba,
- Id_przedmiotu – pole tekstowe 10 znaków,
- Ocena – pole liczbowe bajt.
Tabela SKALA OCEN zawierająca następujące pola:
- Ocena – pole liczbowe bajt,
- Ocena słowna – pole tekstowe 14 znaków
9. Implementacja kodu
Uruchamiamy Microsoft Acess i wybieramy poprzez kliknięcie Pustą bazę danych.
Następnie w oknie Nowy plik bazy danych w polu Nazwa pliku wpisujemy nazwę tworzonej
bazy Szkoła. W polu Zapisz w: wybieramy miejsce lokalizacji pliku bazy, natomiast w polu
Zapisz jako typ: powinniśmy otrzymać Bazy danych MS Access.
Po wybraniu i wpisaniu niezbędnych danych wciskamy przycisk Utwórz.
10. Otrzymujemy okno bazy danych szkoła w którym możemy tworzyć tabele, formularze,
kwarendy, raporty, makra i moduły.
Tworzymy tabele UCZEŃ.
Wybieramy zakładkę Tabele, wciskamy przycisk Nowy i wybieramy jeden ze sposobów
tworzenia tabel. W naszym wypadku Widok projekt.
11. Otrzymujemy okno UCZEŃ: Tabela w której możemy zdefiniować strukturę tabeli UCZEŃ.
Zdefiniować strukturę tabeli to: określić nazwy pól, które będą występowały w tabeli, wybrać
ich typ, oraz określić właściwości każdego pola.
W naszym wypadku:
W kolumnie Nazwa pola wpisujemy nazwę pola w której tabeli np.:
Nazwisko
W kolumnie Typ danych z listy możliwych typów danych wybieramy właściwe dla naszego
pola np. tekst.
We właściwościach pola określamy jego rozmiar – w naszym wypadku 30 znaków dla pola
Nazwisko.
12. Po zdefiniowaniu struktury naszej tabeli:
- wybieramy ikonę Zapisz ze standardowego paska narzędzi
lub wybieramy funkcję Edycja, Zapisz jako.
- Podajemy nazwę tabeli w naszym wypadku UCZEŃ.
Program informuje, że nie zdefiniowaliśmy klucza podstawowego i pyta czy będziemy go
teraz deklarować.
- wciskamy Tak
Klucz podstawowy zdostanie zdefiniowany w polu Identyfikator będącym polem typu
autonumer.
Następnie wybieramy funkcję Widok, Arkusz danych lub wciskamy ikonę Widok, Arkusz
danych i przechodzimy do wpisywania danych do tabeli UCZEŃ.
Tworzymy podobnie jak wyżej tabelę KLASA, która wygląda następująco.
Tworzymy podobnie jak wyżej tabelę NAUCZYCIELE, która wygląda następująco.
13. Tworzymy podobnie jak wyżej tabelę PRZEDMIOTY, która wygląda następująco.
Id_przedmiot Nazwa
EIDK u przedmiotui
Eksploatacja
ELT diagnostyka
Elektrotechnika
FIZ Fizyka
INF Informatyka
JA Języka
JP angielski
Język polski
JR Język rosyjski
MAT Matematyka
PM Programowani
UC e
Układy cyfrowe
UP Urządzenia
peryferyjne
Tworzymy podobnie jak wyżej tabelę UCZY, która wygląda następująco.
14. Tworzymy podobnie jak wyżej tabelę OCENY, która wygląda następująco.
Tworzymy podobnie jak wyżej tabelę SKALA OCEN, która wygląda następująco.
15. Ocena Ocena słowna
1 niedostateczny
2 dopuszczający
3 dostateczny
4 dobry
5 bardzo dobry
6 celujący
Określenie relacji między tabelami i utworzenie innych obiektów bazy danych
W celu utworzenia relacji między tabelami wybieramy:
Funkcje Narzędzia, Relacje.
W oknie Pokaż tabelę, w zakładce Tabele poprzez dwukrotne kliknięcie na nazwie tabeli
wybieramy wszystkie tabele między którymi istnieją relacje.
Po zakończeniu wybierania tabel zamykamy okno Pokaż tabelę.
Poprzez kliknięcie na nazwie pola wybieramy pole do utworzenia relacji np. w tabeli UCZEŃ
klikamy na polu KLASA.
Wciskamy lewy przycisk myszy stojąc na wybranym polu, przeciągamy to pole do tabeli w
której istnieje pole zawierające identyczne dane np. do tabeli KLASA .
Pojawia się okno dialogowe Relacje, które wyświetli nam bieżącą relację.
Posługując się rozwijalnymi strzałkami możemy zmienić pola np. które zostały.
Jeżeli zaznaczymy opcję więzy intergralności, to będzie to oznaczało, że pola
KLASA z obu tabel muszą mieć tą samą pulę danych. Jeżeli będziemy chcieli wprowadzić do
tabeli UCZEŃ wartość w polu KLASA, to ta wartość musi istnieć w tabeli KLASA w polu
KLASA. Nie będziemy mogli również usunąć rekordu z nazwą klasy, która została wpisana w
polu KLASA w tabeli UCZEŃ.
Poprzez wciśnięcie przycisku Typ sprzężenia określamy rodzaj sprzężenia jaki istnieje
pomiędzy tabelami. Standardowym typem sprzężenia jest „Dołącza tylko wiersze, w
którym sprzęganie pola z obu tabel są równe”.
Po zdefiniowaniu wszystkich relacji między tabelami wciskamy przycisk Zapisz.
W naszej bazie Szkołą otrzymujemy relacje między tabelami przedstawione poniżej.
16. Tworzenie kwarendy wybierającej
Uruchamiamy bazę danych z którą chcemy pracować. U nas bazę szkoła.
Wybieramy zakładkę Kwerendy.
Wciskamy przycisk Nowy aby utworzyć nową kwerendę.
Z listy możliwych sposobów tworzenia kwerend wybieramy Kreator prostych kwerend.
W oknie Tabele/Kwerendy wybieramy tabelę lub kwerendę dla której chcemy utworzyć
nową kwerendę np. tabelę Uczeń.
17. Z listy dostępnych pól wybieramy pola, które mają zostać umieszczone w kwerendzie.
Pola mogą zostać wybrane poprzez dwukrotne kliknięcie na ich nazwie lub poprzez
kliknięcie na przycisku w celu wybrania pojedynczego pola lub przycisku w celu
wybrania wszystkich pól.
Z naszej tabeli możemy wybrać Nazwisko, Imię i Klasa.
Wciskamy przycisk Dalej.
Wpisujemy nazwę pliku kwerendy np.Uczeń
Zaznaczamy opcję Otwórz kwerendę lub modyfikuj projekt kwerendy i wciskamy Utwórz.
Otrzymujemy informacje z tabeli uczeń ograniczoną podanymi przez nas polami.
Kwerendy mogą być wyświetlane w trzech postaciach:
- Widok Arkusz danych - przedstawiony powyżej.
- Widok SQL - przedstawia zapytanie -kwerendę zapisana za pomocą poleceń języka SQL.
SELECT [Nazwisko], [imię], [Klasa]
FROM uczeń;
18. - Widok Projekt - pozwala wprowadzić zmiany do kwerendy utworzonej za pomocą kreatora.
W tabeli w linii Pole: wyszczególnione są nazwy pól, które będą pokazywane na ekranie, w
linii Tabela: nazwy tabel z których wzięte są pola. Możemy dodać sposób sortowania lub
nałożyć kryteria na wyprowadzane rekordy w liniach Sortuj: i Kryteria:
Tworzenie kwerendy w Widoku Projekt
• Wybieramy zakładkę Kwerendy.
• Wciskamy przycisk Nowy aby utworzyć nową kwerendę.
• Z listy możliwych sposobów tworzenia kwerend wybieramy Widok Projekt.
• W oknie Pokaż tabelę w zakładce Tabele, Kwerendy lub Obie z listy dostępnych
obiektów poprzez dwukrotne klikniecie na nazwie wybieramy tabele lub kwerendy z
których dane mają zostać umieszczone w zapytaniu. Możemy wcisnąć przycisk Dodaj.
Po wybraniu tabel wciskamy przycisk Zamknij
• Z każdej tabeli poprzez dwukrotne kliknięcie wybieramy te pola, które maja zostać
umieszczone w kwerendzie.
19. Pola do kwerendy można wybrać również poprzez przeciągnięcie nazwy pola z górnej
części panelu do kolejnych komórek części dolnej, lub poprzez wybranie nazwy pola z
rozwijalnej listy pól umieszczonej w każdym wierszu.
Podwójne kliknięcie na gwiazdce w górnej części tabeli powoduje przeniesienie nazw
wszystkich pól do kwerendy. Dla tak przenoszonych pól nie ma możliwości wyboru
sposobu sortowania, nie możliwe jest definiowanie kryteriów.
• Wybieramy sposób sortowania i wpisujemy kryteria.
Dla przykładu wybierzemy z tabeli Uczeń uczniów z klasy 5 TE
W tym celu do kwerendy wybierzemy pola Nazwisko, imię, Klasa.
W linii kryteria w polu Klasa zapiszemy 5 TE.
Aby zapisać kwerendę wciskamy ikonę Zapisz, podajemy nazwę kwerendy np. Uczniowie z
5TE i wciskamy przycisk OK.
Aby zobaczyć wynik naszej kwerendy wciskamy ikonę Widok Arkusz danych , aby
wrócić do projektu kwerendy wciskamy ikonę Widok-projekt .
Określenie zakresu wybieranych rekordów w kwerendach
Jeżeli chcemy wybrać za pomocą kwerendy tylko pewną niewielka grupę rekordów, musimy
zapisać kryteria wyboru tych rekordów.
Aby utworzyć kryterium należy zapisać wyrażenie składające się z argumentów, funkcji oraz
operatorów.
W wyrażeniach mogą występować następujące operatory:
Operatory Operatory
Operatory logiczne
porównania arytmetyczne
Mniejsze < And iloczyn logiczny (i) Sumowanie +
Większe > Or suma logiczna(lub) Odejmowanie -
Mniejsze lub równe <= Not negacja (zaprzeczenie) Mnożenie *
20. Dzielenie / wynik liczba
Większe lub równe >= Xor nierównoważność
dziesiętna
Dzielenie wynik liczba
Równe = Imp implikacja
całkowita
Eqv porównanie dwóch
Nierówne różne<> Potęgowanie ^
wyrażeń.
Reszta z dzielenia MOD
Konkatenacja – łączenie
Operatory tekstowe
tekstów + &
W przypadku wyrażeń złożonych wartość wyrażenia jest obliczana zgodnie z reguła
następstwa operatorów.
Jeżeli w wyrażeniu występują różne operatory to najpierw są wykonywane operatory
arytmetyczne, następnie porównania, a na końcu logiczne.
Operatory porównania są równorzędne. Przy przetwarzaniu wyrażenia są one zawsze
przetwarzane kolejno ze strony lewej na prawą.
Operatory arytmetyczne są przetwarzane w następującej kolejności :
• potęgowanie
• mnożenie i dzielenie
• dzielenie bez reszty ()
• dzielenie modulo reszta z dzielenia
• dodawanie i odejmowanie
• konkatenacja ciągu znaków.
Operatory logiczne są przetwarzane w następującej kolejności :
• Not
• And
• Or
• Xor
• Eqv
• Imp
Kolejność wykonywania operacji w wyrażeniu może być zmieniona nawiasami.
W wyrażeniach bardzo często uczestniczą również funkcje. Zastosowanie funkcji omówimy na
przykładach tworzenia kwerend.
21. Wypisz z tabeli wszystkich uczniów z klasy 5 TE.
• Wybieramy zakładkę Kwerendy.
• Wciskamy przycisk Nowy aby utworzyć nową kwerendę.
• Z listy możliwych sposobów tworzenia kwerend wybieramy Widok Projekt.
• Wybieramy tabelę Uczeń i wciskamy Dodaj.
• Wybieramy pola Imię, Nazwisko, Klasa.
• W polu klasa w linii Kryteria wpisujemy "5 TE”
• Wciskamy przycisk Zapisz, wpisujemy nazwę kwerendy uczniowie z 5 TE i wciskamy
OK
.
• Wybieramy Widok, Arkusz Danych i na ekranie otrzymuję listę uczniów z klasy 5 TE.
W widoku SQL kwerenda ma następującą postać:
SELECT uczeń.imię, uczeń.Nazwisko, uczeń.Klasa
FROM uczeń
WHERE(((uczeń.Klasa)="5 TE"));
Wypisz z tabeli wszystkich uczniów z klasy 5 TE i z klasy 4 TE.
22. Wypisz z tabeli wszystkich uczniów z klas TE.
W linii Kryteria wpisujemy * TE.
Gwiazdka * zastępuje nam dowolną ilość nieznanych znaków.
Możemy również zapisać ? TE.
W tym wypadku pytajnik zastąpił nam jeden nieznany znak - numer klasy. Program zamienia
nam podane kryterium na Like "*TE" lub Like "? TE"
23. Wypisz wszystkich uczniów, których nazwisko rozpoczyna sie na literę A.
Wypisz wszystkich uczniów, których nazwiska rozpoczynają się od liter A,B,C,D,E,F.
W linii Kryteria wpisujemy Like "[A-F]*".
Obok imienia, nazwiska i klasy dla każdego ucznia wypisz nazwę specjalności jego klasy.
• Wybieramy zakładkę Kwerendy.
• Wciskamy przycisk Nowy aby utworzyć nową kwerendę.
24. • Z listy możliwych sposobów tworzenia kwerend wybieramy Widok Projekt.
• Wybieramy tabelę Uczeń i wciskamy Dodaj, a następnie tabelę Klasa i również
Dodaj.
• Wybieramy pola Imię, Nazwisko, Klasa z tabeli Uczeń i pole specjalność z tabeli
Klasa.
• W przypadku gdy tabele nie są połaczone między sobą ustawiamy kursor myszy na
polu klasa w tabeli Uczeń, wciskamy lewy przycisk myszy i przeciągamy to pole do
pola klasa w tabeli Klasa. Zostaje utworzona relacja.
• Wybieramy Widok, Arkusz Danych i na ekranie otrzymuję listę uczniów z klasy 5 TE.
W widoku SQL kwerenda ma następującą postać:
SELECT uczeń.imię, uczeń.Nazwisko, uczeń.Klasa, Klasa.Specjalność
FROM uczeń INNER JOIN Klasa ON uczeń.Klasa = Klasa.klasa
WHERE (((uczeń.Klasa)="5 TE"));
Dla każdego ucznia wypisz nazwisko jego wychowawcy.
• Wybieramy zakładkę Kwerendy.
• Wciskamy przycisk Nowy.
• Wybieramy Widok Projekt.
• Wybieramy tabelę Uczeń i wciskamy Dodaj, następnie tabelę Klasa i tabelę
Nauczyciel.
• Wybieramy pola Imię, Nazwisko, Klasa z tabeli Uczeń i pole imię nazwisko z tabeli
Nauczyciel.
25. • Wybieramy Widok, Arkusz Danych i na ekranie otrzymuję listę uczniów razem z
nazwiskami ich wychowawców.
W widoku SQL kwerenda ma następującą postać:
SELECT uczeń.Nazwisko, uczeń.imię, uczeń.Klasa, nauczyciel.Imię, nauczyciel.Nazwisko
FROM (Klasa INNER JOIN uczeń ON Klasa.klasa = uczeń.Klasa) INNER JOIN nauczyciel
ON Klasa.id_naucz = nauczyciel.id_naucz;
Wypisz nazwiska i imiona oraz klasy uczniów urodzonych w 1979 roku.
• Wybieramy zakładkę Kwerendy.
• Wciskamy przycisk Nowy.
• Wybieramy Widok Projekt.
• Wybieramy tabelę Uczeń i wciskamy Dodaj.
• Wybieramy pola Imię, Nazwisko, Klasa, Data urodzenia z tabeli Uczeń.
• Ustawiamy kursor w polu Data urodzenia w linii sortuj i wybieramy sposób
sortowania(rosnąco).
• W polu Kryteria musimy zbudować wyrażenie sprawdzające czy rok z daty urodzenia
jest równy 1979. Wpisujemy więc następujące wyrażenie:
Year([uczeń]![data urodzenia])=1979
[uczeń]!- nazwa tabeli z której pobieramy dane
[data urodzenia] - nazwa pola z bazy danych.
26. • Wybieramy Widok, Arkusz Danych i na ekranie otrzymuję listę uczniów zrazem z
nazwiskami wychowawców.
Funkcja YEAR(data) daje jako wynik rok z podanej jako argument daty.
Funkcja MONTH(data) daje jako wynik miesiąc z podanej daty.
Funkcja DAY(data urodzenia) daje jako wynik dzień z podanej daty.
W widoku SQL kwerenda ma następującą postać:
SELECT uczeń.Nazwisko, uczeń.imię, uczeń.Klasa, uczeń.[Data urodzenia], uczeń.[Miejsce
urodzenia]
FROM uczeń
WHERE ((Year([uczeń]![Data urodzenia])=1979))
ORDER BY uczeń.[Data urodzenia];