1. Wykonaj bazę danych biblioteki szkolnej, Otwórz MS Access a następnie z menu plik wybierz przycisk nowy, w oknie nowy plik wybieramy pusta baza danych nadaj jej nazwę Biblioteka i wybierz miejsce w którym chcesz ją zapisać 2. Kolejnym krokiem jest utworzenie trzech tabel o nazwie Księgozbiór, Czytelnicy, Wypożyczenia. Z menu obiekty wybieramy Tabele następnie klikamy na Utwórz tabelę w widoku projektu i zatwierdzamy przyciskiem projektuj Uzupełnij pola tabeli zgodnie z przykładem poniżej, Nazwa pola to nazwy poszczególnych kolumn w tabeli Typ danych to format w jakim będą wyświetlane dane w komórkach Opis to pole opcjonalne i nie jest wymagane Zapisujemy tabelę klikając na symbol dyskietki w pasku narzędzi, nadajemy jej nazwę Czytelnicy zatwierdzamy, po pokazaniu się komunikatu klikamy TAK zostanie 1
utworzone pole Identyfikator będące Kluczem podstawowym jednoznacznie identyfikującym wprowadzane dane. 3. Kolejnym krokiem jest nadanie poszczególnym polom właściwości Dla Pól: Imię, Nazwisko Pozycję Wymagane zmieniamy na TAK Kod pocztowy Pozycja Maska wprowadzania zmieniamy na 00-000 (prawidłowe znaki dla masek wprowadzania oraz przykłady na ostatniej stronie) Telefon Pozycja Maska wprowadzania zmieniamy na \(00\)000-00-00 Data urodzenia Pozycja Format zmieniamy na Data krótka Pozycja Wartość domyślna zmieniamy na #1900-01-01# Zmieniamy nazwę pola Identyfikator na ID_Czytelnika 2
4. Analogicznie tworzymy i formatujemy tabelę Księgozbiór i Wypożyczenia tym razem samodzielnie definiujemy klucz podstawowy, zaznaczając odpowiednią nazwę pola a następnie klikając ikonę klucza jak na rys. niżej W tabeli Wypożyczenia Pole Ilość dni wypożyczenia powinno być listą rozwijaną z której można wybrać spośród co najmniej 3 opcji długość okresu wypożyczenia książki, W tym celu klikamy na typ danych wybranego pola i zmieniamy atrybut na Kreator odnośników następnie zaznaczamy opcję Chcę wpisać żądane przeze mnie wartości i klikamy dalej, uzupełniamy tabelę wybranymi przez nas wartościami i klikamy zakończ. 3
5. Uzupełnij utworzone tabele danymi przynajmniej 10 wierszy dla każdej z tabel 6. Utwórz relacje pomiędzy tabelami Występują trzy typy relacji pomiędzy tabelami. Relacja jeden-do-wielu Rozważmy przykład bazy danych do śledzenia zamówień, która zawiera tabelę Klienci i tabelę Zamówienia. Klient może złożyć dowolną liczbę zamówień. W związku z tym każdemu klientowi reprezentowanemu w tabeli Klienci może odpowiadać wiele zamówień reprezentowanych w tabeli Zamówienia. Dlatego relacja pomiędzy tabelą Klienci a tabelą Zamówienia to relacja jeden-do-wielu. Aby w projekcie bazy danych utworzyć relację jeden-do-wielu, należy klucz podstawowy znajdujący się po stronie jeden relacji dodać jako pole lub pola do tabeli po stronie wiele tej relacji. W tym przykładzie należy dodać nowe pole jest to pole identyfikatora z tabeli Klienci do tabeli Zamówienia i nadać mu nazwę Identyfikator klienta. Dzięki temu program Access będzie mógł za pomocą numeru identyfikacyjnego klienta wyszukać właściwego klienta dla każdego zamówienia. Relacja wiele-do-wielu Rozważmy przykład relacji pomiędzy tabelą Produkty a tabelą Zamówienia. Jedno zamówienie może obejmować wiele produktów. Z drugiej strony jeden produkt może się znaleźć w wielu zamówieniach. Dlatego każdemu rekordowi z tabeli Zamówienia może odpowiadać wiele rekordów z tabeli Produkty. Ponadto każdemu rekordowi z tabeli Produkty może odpowiadać wiele rekordów z tabeli Zamówienia. Relacja tego typu jest nazywana relacją wiele-do-wielu, ponieważ każdemu produktowi może odpowiadać wiele zamówień, a każdemu zamówieniu wiele produktów. Należy zauważyć, że aby wykryć istniejące relacje wiele-do-wielu pomiędzy tabelami, trzeba się przyjrzeć obu stronom relacji. Aby utworzyć relację wiele-do-wielu, należy utworzyć trzecią tabelę, często zwaną tabelą skrzyżowań, która rozbija relację wiele-do-wielu na dwie relacje jeden-do-wielu. Do tej trzeciej tabeli wstawia się klucze podstawowe z obu pierwotnych tabel. Skutkiem tego trzecia tabela rejestruje każde wystąpienie relacji. Tabele Zamówienia i Produkty są na przykład powiązane relacją wiele-do-wielu zdefiniowaną przez utworzenie dwóch relacji jeden-dowielu z tabelą Szczegóły zamówień. Każde zamówienie może dotyczyć wielu produktów, a każdy produkt może występować w wielu zamówieniach. Relacja jeden-do-jednego W relacji jeden-do-jednego z każdym rekordem w pierwszej tabeli może być związany tylko jeden pasujący rekord w drugiej tabeli, a z każdym rekordem w drugiej tabeli może być związany tylko jeden pasujący rekord w pierwszej tabeli. Ten typ relacji jest nietypowy, ponieważ najczęściej informacje powiązane w ten sposób są przechowywane w jednej tabeli. Za pomocą relacji jeden-do-jednego można podzielić tabelę z wieloma polami, odizolować fragment tabeli ze względów bezpieczeństwa lub przechowywać informacje odnoszące się tylko do podzbioru tabeli głównej. Określenie takiej relacji wymaga, aby obie tabele używały wspólnego pola. 4
Wybieramy z menu Narzędzia Relacje zaznaczamy wszystkie tabele i klikamy dodaj Relacje dodajemy przeciągając nazwy pól z jednej tabeli do ich odpowiedników w innej, następnie zaznaczamy opcję Wymuszaj więzy integralności oraz Kaskadowo aktualizuj pola pokrewne 5
6
Rysunek 1 maski wprowadzania 7
Rysunek 2 maski wprowadzania 8
W poniższej tabeli podano przykłady reguł sprawdzania poprawności na poziomie pola i na poziomie rekordu wraz z wyjaśniającym tekstem reguły. Przykłady te można zaadaptować do własnej zawartości. Reguła sprawdzania poprawności Tekst reguły sprawdzania poprawności <>0 Wprowadź wartość różną od zera. >=0 0 or >100 BETWEEN 0 AND 1 Wartość musi być równa lub większa niż zero. lub Musisz wprowadzić liczbę dodatnią. Wartość musi być równa 0 lub większa niż 100. Wprowadź wartość ze znakiem procentu. (Do użycia w przypadku pól, w których wartości liczbowe są przechowywane w postaci wartości procentowych). <#2007-01-01# Wprowadź datę sprzed 2007 roku. >=#2007-01-01# AND <#2008-01-01# Data musi przypadać w 2007 roku. <Date() StrComp(UCase([Nazwisko]), [Nazwisko],0) = 0 >=Int(Now()) M Or K LIKE "[A-Z]*@[A-Z].com" OR "[A-Z]*@[A- Z].net" OR "[A-Z]*@[A-Z].org" [DataDostawy]<=[DataZamówienia]+30 [DataKońcowa]>=[DataPoczątkowa] Data urodzenia nie może być datą w przyszłości. Dane w polu Nazwisko muszą być wpisane wielkimi literami. Wprowadź dzisiejszą datę. Wprowadź M w przypadku mężczyzny lub K w przypadku kobiety. Wprowadź prawidłowy adres e-mail w domenie com, net lub org. Wprowadź datę dostawy przypadającą najwyżej 30 dni po dacie zamówienia. Wprowadź datę końcową równą dacie początkowej lub późniejszą. Podczas tworzenia wyrażeń należy pamiętać o następujących regułach: Nazwy pól tabeli należy ujmować w nawiasy kwadratowe, tak jak tutaj: [DataDostawy]<=[DataZamówienia]+30. Daty należy ujmować w znaki numeru (#), tak jak tutaj: <#2007-01-01# Wartości tekstowe należy ujmować w podwójny cudzysłów, tak jak tutaj: IN ("Tokio","Paryż","Moskwa"). Należy także pamiętać o rozdzieleniu poszczególnych elementów przecinkami i umieszczeniu listy w nawiasach. 9
Jako dodatek do tych reguł w poniższej tabeli przedstawiono przykłady typowych operatorów arytmetycznych oraz przykłady ich użycia. Operator Funkcja Przykład NOT IN BETWEEN LIKE IS NOT NULL AND OR Służy do sprawdzania wartości przeciwnych. Można go używać przed dowolnym operatorem porównania, z wyjątkiem operatora IS NOT NULL. Służy do sprawdzania, czy wartości są równe istniejącym elementom listy. Porównywaną wartością musi być lista rozdzielana przecinkami ujęta w nawiasy. NOT > 10 (to samo co <=10). IN ("Tokio","Paryż","Moskwa") Służy do sprawdzania, czy wartość należy do zakresu. Należy użyć dwóch BETWEEN 100 AND 1000 (to samo wartości do porównania minimalnej co >=100 AND <=1000) i maksymalnej i rozdzielić te wartości separatorem AND. Służy do porównywania wartości z ciągami wzorcowymi w polach typu Tekst lub Nota. Wymusza na użytkownikach wprowadzanie wartości w danym polu. Działa tak samo jak ustawienie właściwości pola Wymagane na Tak. Jeśli jednak właściwość Wymagane jest włączona, a użytkownik nie wprowadzi wartości, program Access wyświetli nieco niezrozumiały komunikat o błędzie. Zwykle korzystanie z bazy danych jest łatwiejsze w przypadku użycia wyrażenia IS NOT NULL i wprowadzenia łatwego do zrozumienia komunikatu we właściwości Tekst reguły spr. poprawności. Służy do określania, że wszystkie wprowadzane dane muszą być prawdziwe lub mieścić się w określonych granicach. Służy do określania, że jedna lub więcej wartości może być prawdziwych. LIKE "Geo*" IS NOT NULL >= #2007-01-01# AND <=#2008-03- 06# Uwaga Operatora AND można użyć także w celu połączenia reguł sprawdzania poprawności. Na przykład: NOT "UK" AND LIKE "U*". styczeń OR luty 10
<</b> Mniejsze niż. <= Mniejsze lub równe. > Większe niż. >= Większe lub równe. = Równe. <> Różne od. 11