Projekt Bazy Danych

30
Projekt Bazy Danych BAZA SZKOŁY 1. Kowalski Karol 2. drugi uczeń Klasa

description

 

Transcript of Projekt Bazy Danych

Page 1: Projekt Bazy Danych

Projekt Bazy Danych

BAZA SZKOŁY

1. Kowalski Karol

2. drugi uczeń

Klasa

Page 2: Projekt Bazy Danych

Spis treści

Page 3: Projekt Bazy Danych

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).

Page 4: Projekt Bazy Danych

Relecje baz danych

Page 5: Projekt Bazy Danych

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ą.

Page 6: Projekt Bazy Danych

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,

Page 7: Projekt Bazy Danych

- Klasa – pole tekstowe o dł. 10 znaków,- Ile godzin – pole liczba bajtów,

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

Page 8: Projekt Bazy Danych

Podsumowanie

Page 9: Projekt Bazy Danych

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.

Page 10: Projekt Bazy Danych

Po wybraniu i wpisaniu niezbędnych danych wciskamy przycisk Utwórz.

Otrzymujemy okno bazy danych szkoła w którym możemy tworzyć tabele, formularze, kwarendy, raporty, makra i moduły.

Tworzymy tabele UCZEŃ.

Page 11: Projekt Bazy Danych

Wybieramy zakładkę Tabele, wciskamy przycisk Nowy i wybieramy jeden ze sposobów tworzenia tabel. W naszym wypadku Widok projekt.

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.:NazwiskoW 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.

Page 12: Projekt Bazy Danych

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Ń.

Page 13: Projekt Bazy Danych

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.

Tworzymy podobnie jak wyżej tabelę PRZEDMIOTY, która wygląda następująco.

Id_przedmiotu

Nazwa przedmiotuEIDK Eksploatacja i

diagnostyka ELT ElektrotechnikaFIZ Fizyka

INF InformatykaJA Języka

angielskiJP Język polskiJR Język rosyjskiMAT MatematykaPM Programowani

e UC Układy cyfroweUP Urządzenia

peryferyjne

Page 14: Projekt Bazy Danych

Tworzymy podobnie jak wyżej tabelę UCZY, która wygląda następująco.

Tworzymy podobnie jak wyżej tabelę OCENY, która wygląda następująco.

Page 15: Projekt Bazy Danych

Tworzymy podobnie jak wyżej tabelę SKALA OCEN, która wygląda następująco.

Ocena Ocena słowna1 niedostateczny2 dopuszczający3 dostateczny4 dobry5 bardzo dobry6 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 polaKLASA 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.

Page 16: Projekt Bazy Danych

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ń.

Page 17: Projekt Bazy Danych

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ń;

Page 18: Projekt Bazy Danych

- 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

Page 19: Projekt Bazy Danych

Z każdej tabeli poprzez dwukrotne kliknięcie wybieramy te pola, które maja zostać umieszczone w kwerendzie.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 TEW 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 kwerendachJeż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 porównania Operatory logiczne Operatory

arytmetyczne

Mniejsze < And iloczyn logiczny (i) Sumowanie +

Większe > Or suma logiczna(lub) Odejmowanie -

Page 20: Projekt Bazy Danych

Mniejsze lub równe <= Not negacja (zaprzeczenie) Mnożenie *

Większe lub równe >= Xor nierównoważnośćDzielenie / wynik liczba dziesiętna

Równe = Imp implikacjaDzielenie \ wynik liczba całkowita

Nierówne różne<>Eqv porównanie dwóch wyrażeń.

Potęgowanie ^

    Reszta z dzielenia MOD

Operatory tekstoweKonkatenacja – łączenie 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.

Wypisz z tabeli wszystkich uczniów z klasy 5 TE.

Page 21: Projekt Bazy Danych

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.

Page 22: Projekt Bazy Danych

  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"

  

Wypisz wszystkich uczniów, których nazwisko rozpoczyna sie na literę A.

Page 23: Projekt Bazy Danych

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ę. 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.

Page 24: Projekt Bazy Danych

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.klasaWHERE (((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.

Page 25: Projekt Bazy Danych

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.NazwiskoFROM (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.

Page 26: Projekt Bazy Danych

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];