BAZY DANYCH - PODSTAWOWE POJĘCIA, WPROWADZENIE TEORETYCZNE (ćw. 1)
ACCESS - system zarządzania (relacyjną) bazą danych
baza danych - zbiór informacji. Przykłady: książka telefoniczna, katalog biblioteczny
SZBD (System Zarządzania Bazą Danych) - system pozwalający: dodawać, usuwać, edytować informacje w bazie, manipulować danymi w bazie
SZRBD (System Zarządzania Relacyjną Bazą Danych) - j.w., dotyczy działań na relacyjnej bazie danych
BARDZIEJ FORMALNIE:
baza danych - zbiór powiązanych ze sobą tabel
tabela - zbiór rekordów (wiersze) określonego rodzaju
rekord - zbiór danych o obiekcie, składa się z pól
relacja - zdefiniowane powiązanie między tabelami, inaczej: sposób na połączenie informacji przechowywanych w różnych tabelach (niech wymyślą przykłady!!!)
Rodzaje relacji:
jeden-do-jednego: dwie tabele mają dokładnie po jednym rekordzie powiązane ze sobą (przykład?)
jeden-do-wielu: jeden rekord tabeli może być powiązany z wieloma rekordami innej tabeli (przykład: )
wiele-do-wielu: jeden rek. z tabeli może być powiązany z wieloma z innej i odwrotnie! Np. studenci-tytuły referatów.
Manipulowanie na danych
służą do tego języki zapytań. Podstawowe rodzaje: deklaratywne i predykatowe.
SQL (Structured Query Language) - deklaratywny język zapytań strukturalnych (mówimy, jaki wynik chcemy uzyskać, nie mówimy jak)
QBE (Query By Example) - zapytania wg wzorca - graficzne narzędzie konstruowania zapytań (w Accessie stosowany gdy korzystamy z siatki projektu). Żądania definiuje się, podając przykładowe wartości. Przykład z Accessa: filtruj wg formularza
Klucz - pole (lub zbiór pół) w tabeli, które w jednoznaczny sposób identyfikują każdy z rekordów. Służą do: indeksowania, sortowania, wyszukiwania danych itd.
Rodzaje kluczy:
podstawowy: jednoznacznie identyfikuje rekord
złożony - składa się z kilku pól
obcy: pole w tabeli, które łączy wiersz tej tabeli z odpowiednim wierszem innej tabeli. zazwyczaj w tej innej tabeli pole to jest kluczem podstawowym.
Zadanie dotyczące kluczy: znaleźć w przykładowych tabelach klucz: podstawowy, obcy, złożony.
TABELE:
klienci |
Zamówienia |
pozycje zamówienia |
ID klienta (podst) Nazwa Ulica Kod Miasto Województwo |
Numer zamówienia (podst) Data zamówienia ID klienta (obcy) Sposób dostawy |
Numer zamówienia (obcy) Ilość ID towaru Cena Data dostawy Suma zamówienia |
Złożony: np. nr_zamówienia+ID towaru
Podstawowe operacje w bazie danych
operacja projekcji - udostępnia („wyświetla”, pokazuje) selektywnie dane w układzie pionowym. Np. dla tabeli KLIENCI możemy wyświetlić sobie dane w układzie ID klienta, miasto
operacja selekcji (wyboru) - wybieranie z tabeli tych rekordów, które spełniają kryterium (to będą robić np. kwerendy wybierające). Np. z tabeli KLIENCI wybieramy tylko tych, dla których miasto = Łódź.
Zasady projektowania RBD
W tabeli nie może znajdować się 2 lub więcej rekordów o identycznych wartościach wszystkich atrybutów -> I TU WŁAŚNIE PRZYDAJE SIĘ KLUCZ!
nie wolno zapisać do tabeli rekordu o nieznanej wartości klucza podstawowego (tu przydaje się np. autonumer)
w jednym rekordzie nie można wielokrotnie ująć tego samego atrybutu lub grupy atrybutów.
ETAPY TWORZENIA RBD
określenie zbiorów niezbędnych danych (lista danych + krótki opis, do czego będą służyć)
określenie zbiorów pól w tabelach (czyli podział bazy na tabele)
określenie kluczy podstawowych (NORMALIZACJA DANYCH do 3 postaci normalnej włącznie)
ustalenie własności pól
Ćwiczenia na przykładowej bazie danych - Northwind Traders, która jest dołączona do programu MS Access. Celem zajęć jest:
zapoznanie się z interfejsem użytkownika MS Access
zapoznanie się ze strukturą typowej bazy danych
znalezienie odpowiedzi na pytanie, jakie podstawowe operacje można wykonywać na danych
wstępne zapoznanie z możliwościami programu Access
wstępne zapoznanie z ułatwieniami oferowanymi użytkownikowi przez program (np. kreatory).
ZADANIA: zarówno do wykonania na komputerze jak i na kartce. Miłej zabawy!
Uruchom MS Access. Wybierz opcję „otwórz istniejącą bazę danych”, a następnie pozycję „więcej plików”. Wejdź do folderu: C:\Program Files\Microsoft Office\Office\Przykldy. Otwórz bazę Northwind.mdb
Pytanie 1. Jakie jest standardowe rozszerzenie, nadawane plikom bazy danych przez program Access?
Obejrzyj ekran bazy danych
Pytanie 2: Jakie zakładki widzisz na ekranie w oknie bazy danych? Wypisz je poniżej:
Wybierz zakładkę Tabele. Wybierz tabelę Klienci i otwórz ją (przycisk Otwórz z prawej strony okna).
Pytanie 3: Jakie pola są w tabeli klienci? Wypisz je:
Pytanie 4: Które z tych pól jest według Ciebie kluczem podstawowym?
Zamknij tabelę Klienci. W podobny sposób obejrzyj tabelę Produkty i Pracownicy. Odpowiedz na takie same pytania jak w przypadku tabeli Klienci. Zamknij tabele.
Otwórz tabelę Pracownicy w trybie projektowania (przycisk Projektuj z prawej strony okna).
Pytanie 5: Które pole jest kluczem podstawowym (czyli przy którym polu widzisz symbol kluczyka?) Czy jest to to samo pole, które wskazałeś jako klucz w zadaniu poprzednim? Jeżeli nie, to przypomnij sobie wiadomości na temat kluczy z poprzednich zajęć i zastanów się, jaki błąd popełniłeś w rozumowaniu.
Pytanie 6: Wypełnij poniższą tabelkę.
|
Tabela otwarta w widoku „arkusz danych” |
Tabela otwarta w widoku „projekt” |
1. Jaki jest układ pół w tabeli (pionowy, poziomy)? |
|
|
2. Czy widać, które pole jest kluczem podstawowym? |
|
|
3. Czy można wprowadzić dane (tak/nie)? |
|
|
4. Czy widać jaki jest typ danych? |
|
|
5. Czy można usunąć pole (tak/nie)? |
|
|
Jakiego typu operacje na danych możesz wykonać, mając do dyspozycji tabele? Wypisz je poniżej:
Wykorzystując tabelę Pracownicy:
dodaj rekord pracownika Jana Kowalskiego (pozostałe potrzebne dane pana Kowalskiego wymyśl sam)
zmień nazwisko pana Kowalskiego na Nowak.
usuń rekord pana Nowaka.
Ponownie wybierz zakładkę Tabele (o ile jesteś w innym oknie). Wciśnij przycisk Nowy a następnie wybierz opcję „widok projekt” Stwórz tabelę o następującej strukturze i typach danych:
NAZWA POLA |
TYP DANYCH W POLU |
ID_pracownika |
Autonumer |
Nazwisko |
Tekst |
Imię |
Tekst |
Dzieci |
Tak/Nie |
Strona_domowa |
hiperłącze |
Zapisz tę tabelę pod nazwą Moja pierwsza tabela (po prostu zamknij okno tabeli, a wtedy Access zapyta, czy ją zapisać).
Otwórz tabelę z poprzedniego zadania i usuń z niej pole Dzieci (Uwaga: sam zdecyduj, w jaki sposób otworzyć tabelę, aby możliwe było usunięcie pola!). Zamknij tabelę, zachowując zmiany.
Usuń tabelę Moja pierwsza tabela
A teraz stworzymy nową tabelę, korzystając z kreatora tabel i proponowanych przez niego tabel przykładowych. Oczywiście trzeba będzie dokonać małych zmian. A zatem: ponownie wciśnij przycisk Nowy, ale tym razem wybierz opcję Kreator tabel. Z listy przykładowych tabel wybierz pozycję Zamówienia. Z listy przykładowych pól wybierz do nowej tabeli następujące pola:
IDklienta
ID zamówienia
NazwaPrzesyłki
AdresOdbiorcy
KodPocztowyOdbiorcy
MiastoOdbiorcy
Pytanie 7: Jak myślisz, do czego można by wykorzystać w firmie taką tabelę?
Korzystając z przycisku Zmień nazwę pola dokonaj następujących zmian w nazwach wybranych przez Ciebie pól:
NazwaPrzesyłki -> Nazwa
AdresOdbiorcy -> Ulica
KodPocztowyOdbiorcy -> Kod
MiastoOdbiorcy -> Miasto.
Pytanie 8: Po co komu takie zmiany?
Nazwij nową tabelę Moja druga tabela. Nie ustanawiaj żadnych relacji, a po utworzeniu tabeli wprowadź do niej kilka przykładowych rekordów.
Znajdź w otrzymanych materiałach informacje na temat kwerend i zapoznaj się z nimi
Przejdź do zakładki kwerendy. Wykorzystując przycisk Otwórz obejrzyj wynik działania kwerend:
bieżąca lista produktów (ta kwerenda po prostu prezentuje wszystkie produkty z bazy „Northwind”)
dziesięć najdroższych produktów (a co robi ta kwerenda? Nazwa mówi sama za siebie!)
dostawcy wg miast (to kwerenda składająca, czyli pokazując w jednym okienku dane z kilku tabel)
zamówienia kwartalne wg produktów (to jest kwerenda krzyżowa, cokolwiek miałoby to znaczyć)
Teraz otwórz te wszystkie kwerendy po kolei w widoku Projekt. Jaka jest różnica?
W widoku projekt odszukaj przycisk Uruchom na pasku narzędzi i wciśnij go. Co się stało? Powtórz tę operację dla każdej z kwerend.
Pytanie 9: Czym różni się wynik działania kwerendy uruchomionej przyciskiem uruchom i otwartej przyciskiem „otwórz”?
Zapoznaj się z otrzymanymi informacjami dotyczącymi formularzy.
Przejdź do zakładki Formularze. Analogicznie jak w zadaniach dotyczących tabel i kwerend, obejrzyj kilka formularzy, najpierw używając przycisku Otwórz, a potem przycisku Projektuj.
Pytanie 10: Kiedy otwieramy formularz przyciskiem „otwórz”, a kiedy przyciskiem „projektuj”?
Używając przycisku Nowy, a następnie Kreatora formularzy, stwórz formularz, który będzie korzystał z tabeli Klienci i zawierał pola: Idklienta, NazwaFirmy, Adres, KodPocztowy, Miasto, Telefon. Układ formularza, styl i tytuł wybierz dowolnie.
Na końcu pozostaw wybraną opcję „Otwórz formularz aby zobaczyć lub wprowadzić informacje”.
Przejdź na koniec formularza i dodaj dowolny jeden rekord.
Zamknij formularz.
Usuń stworzony przez siebie formularz.
Przejdź do zakładki Raporty. W otrzymanych materiałach znajdź informacje na temat raportów i zapoznaj się z nimi.
Korzystając z przycisku Podgląd, obejrzyj następujące przykładowe raporty:
Alfabetyczna lista produktów
Produkty wg kategorii
Katalog
Te same raporty obejrzyj w widoku Projekt.
Pytanie 11: Co przypomina Ci widok „Projekt” raportu?
Skorzystaj z przycisku Nowy i uruchom Kreatora raportów. Spróbuj z jego pomocą utworzyć jak najprostszy (!!!) raport z takimi samymi polami jak w zadaniu 14 (czyli jak w formularzu). Nazwij go Mój pierwszy raport. Obejrzyj wynik swoich działań, a potem skasuj raport.
Makrami i modułami nie przejmuj się, zajmiemy się nimi kiedy indziej....
Zamknij bazę „Northwind” (ale nie Accessa!!!). Otwórz teraz bazę Zamówienia.mdb (jest ona w tym samym folderze co baza Northwind). Jest to aplikacja wykorzystująca dane z Northwind, która pokaże Ci, co jeszcze można zrobić w Accessie) chociaż to oczywiście nie koniec możliwości). Miłej zabawy.
ZADANIE DOMOWE |
Przypomnij sobie podstawowe pojęcia baz danych, omawiane na poprzednich zajęciach. Zastanów się, jaką strukturę powinna mieć baza danych, służąca do obsługi niewielkiej księgarni? Jakie powinny być tabele, jakie dane, jakiego typu? Które z nich ustaliłbyś jako klucze itd.? Przygotuj na kartce propozycję struktury tej bazy. |