RELACYJNE BAZY DANYCH - WICZENIA Utworzymy baz danych Dziennik lekcyjny Tworzenie tabel Utwórz now tabel . Wybierz obiekt Tabele, kliknij przycisk Nowy, a nast pnie z listy wybierz Widok Projektu. 1. Utwórz tabel Ocena, w której zapiszesz informacje o ocenach uczniów z ró nych przedmiotów. Zapisz tabel . W tej tabeli nie tworzymy adnego Klucza podstawowego. Wypełnij tabel danymi (Przeł cz si na Widok arkusza danych): 2. W podobny sposób utwórz nast pn tabel . Kluczem podstawowym ma by komórka ID ucznia. Aby ustawi klucz podstawowy kliknij prawym klawiszem myszki na komórk i wybierz Klucz podstawowy. Po utworzeniu tabeli zapisz j pod nazw Ucze . Wypełnij tabel danymi (Przeł cz si na Widok arkusza danych): 3. Utwórz tabel Nauczyciel. ID nauczyciela. Zapisz tabel . Kluczem podstawowym ma by komórka by komórka Wypełnij tabel danymi (Przeł cz si na Widok arkusza danych): 4. Utwórz ID ucznia. Szafka. tabel Kluczem podstawowym ma Wypełnij tabel danymi (Przeł cz si na Widok arkusza danych): 5. Utwórz tabel ID przedmiotu. Lista przedmiotów. Kluczem podstawowym ma by komórka Wypełnij tabel danymi (Przeł cz si na Widok arkusza danych): Tworzenie relacji mi dzy tabelami Wybierz opcj Relacje z menu Narz dzia. Wy wietli si okno Poka tabel . Wybieraj z listy po kolei wszystkie tabele i za ka dym razem naci nij przycisk Dodaj. Po dodaniu tabel kliknij lewym przyciskiem myszki na polu ID ucznia tabeli Ucze i przeci gnij na pole ID ucznia w tabeli Ocena. Pojawi si okno dialogowe Edytowanie relacji. Zaznacz opcje Wymuszaj wi zy integralno ci i Kaskadowo aktualizuj pola pokrewne. Upewnij si , e typ relacji to jeden do wielu (∞ ∞ - 1). W podobny sposób poł cz pozostałe tabele. Zauwa , e tabele Ucze i Szafka poł czone s relacj jeden do jednego (1 - 1). Upewnij si , e relacje zostały utworzone jak na powy szym rysunku. Zapisz zmiany i zamknij Relacje. J zyk SQL Selekcja pionowa (projekcja) wiczenie 1 Na podstawie tabeli ucze chcieliby my utworzy list wszystkich uczniów danej klasy, z której wydrukowaliby my zaproszenia na nasze urodziny, dane o imionach rodziców byłyby nam zupełnie niepotrzebne. Aby utworzy tego typu zestawienia i raporty nale y z dost pnych obiektów bazy danych wybra obiekt Kwerendy, klikn przycisk Nowy (w rezultacie wywołamy kreatora kwerend), nast pnie z listy dost pnych mo liwo ci wybierz Widok Projekt. Z listy okna dialogowego wybierz tabel Uczniowie. Nast pnie przeł cz si z Widok Projekt na Widok SQL. Po przej ciu do tworzenia nowych kwerend w Widoku SQL, wpisz poni sz instrukcj : SELECT * FROM Ucze ; Przeł cz si na Widok arkusza danych i zobacz efekt. Przeł cz si na Widok SQL i zmodyfikuj kwerend aby ograniczy liczb kolumn do dwóch: SELECT Imi , Nazwisko FROM Ucze ; Przeł cz si na Widok arkusza danych i zobacz efekt Zapisz nasz now kwerend w bazie danych pod nazw Imiona. Zmodyfikujmy nasz list tak, aby lista uczniów była uszeregowana alfabetycznie wg. nazwisk uczniów. W tym celu (w Widoku SQL naszej kwerendy) dodajmy do instrukcji SELECT dodatkowy element: SELECT Imi , Nazwisko FROM Ucze order by Nazwisko; Przeł cz si na Widok arkusza danych i zobacz efekt. Selekcja pozioma (selekcja) wiczenie 1 Chcemy z bazy danych wydoby informacje kontaktowe do Jana Bandury. Musimy znale Ucze wiersz w którym zapisane s jego dane. w tabeli Utwórz now kwerend na bazie tabeli Ucze i w Widoku SQL wpisz nast puj ce polecenie: SELECT * FROM Ucze WHERE [ID ucznia]='JBA'; Przeł cz si na Widok arkusza danych i zobacz efekt (Nazw kolumny ID ucznia umie cili my w nawiasie kwadratowym, poniewa zawiera ona spacj ). Powiedzmy, e interesuje nas wył cznie numer telefonu. Poł czmy selekcj pionow z poziom w nast puj cym poleceniu: SELECT Imi , Nazwisko, [telefon kontaktowy] FROM Ucze WHERE [ID ucznia]='JBA'; Przeł cz si na Widok arkusza danych i zobacz efekt wiczenie 2 Dyrektor chciałby wiedzie , ile ocen niedostatecznych wystawili my na koniec semestru w klasie 2a. Zadanie sprowadza si do wybrania z tabeli Ocena tych wierszy, które w kolumnie Ocena przechowuj warto 2, w kolumnie ID przedmiotu warto "MAT", a w kolumnie zdobyta za warto semestr. Rozwi zaniem zadania jest instrukcje: SELECT Ocena FROM Ocena WHERE Ocena=2 AND [ID przedmiotu]='MAT' AND [Zdobyta za]='semestr'; Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako dopuszczaj ce. wiczenie 3 Tym razem chcieliby my sprawdzi , które szafki były okradzione w ci gu ostatnich 3 miesi cy. Zadanie sprowadza si do wybrania z tabeli Szatnia tych wierszy dla których data ostatniej kradzie y, przechowywana w kolumnie Data kradzie y nale y do zakresu <data dzisiejsza, data dzisiejsza - 91>. Rozwi zaniem zadania jest poni sze zapytanie skierowane do SZBD: SELECT [Data kradzie y], [Nr szafki], Uwagi FROM Szafka WHERE (Date()-[Data kradzie y])<91; Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako kradzie e. Dodawanie, modyfikowanie i usuwanie wierszy wiczenie 1 Przyjmijmy, e dyrektor zatrudnił now nauczycielk . Fakt ten powinien zosta uwzgl dniony w naszej bazie. Do dopisywania danych do istniej cej tabeli słu y instrukcja INSERT. W bazie Dziennik informacje opisuj ce ka dego nauczyciela przechowywane s w tabeli Nauczyciel. Polecenie dopisania nowej nauczycielki wygl da nast puj co: INSERT INTO Nauczyciel ( [ID nauczyciela], Imi , Nazwisko, Adres, [Wychowawca klasy] ) VALUES ('SLE', 'Samanta', 'Lepsza', 'K-ce, 44-112 ul. Portowa 13c', '4d'); Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako dodaj nauczyciela. Zmodyfikuj kwerend dodaj nauczyciela tak aby dane dotycz ce nauczyciela mo na było wpisywa po uruchomieniu kwerendy: INSERT INTO Nauczyciel ( [ID nauczyciela], Imi , Nazwisko, Adres, [Wychowawca klasy], [telefon kontaktowy] ) VALUES ([ID], [Imi ], [Nazwisko ], [Adres], [Wychowawca], [Telefon]); Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako dodaj nauczyciela. wiczenie 2 W szafce Ewy Starskiej ponownie dokonano kradzie y. Zadanie polega na aktualizacji daty kradzie y w tabeli Szafka. UPDATE Szafka SET [Data kradzie y] = date () WHERE [ID ucznia]='EST'; Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako nowa kradzie . wiczenie 3 Zdecydowali my si podnie semestraln ocen z matematyki wszystkim uczniom o 1. Poni ej przedstawiamy polecenie realizuj ce to zadanie: UPDATE Ocena SET Ocena=Ocena+1 WHERE [Zdobyta za]='Semestr' AND [ID przedmiotu]='MAT'; Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako podnie ocen . wiczenie 4 Chcemy z listy przedmiotów usun przedmiot Filozofia wykorzystamy do tego poni sz instrukcj : DELETE * FROM [Lista przedmiotów] WHERE [Id przedmiotu]='FILO'; W rezultacie z tabeli zostan usuni te wszystkie wiersze spełniaj ce podany warunek. Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako skasuj przedmiot. Ł czenie tabel wiczenie 1 Chcemy pozna numery szafek nale cych do poszczególnych uczniów, musimy wykorzysta informacj z tabeli Ucze (takie jak imi i nazwisko), oraz informacj z tabeli Szatnia. Zadanie te realizuje poni sza komenda: SELECT Ucze .Imi , Ucze .Nazwisko, Szafka.[Nr szafki] FROM Ucze INNER JOIN Szafka ON Ucze .[ID ucznia] = Szafka.[ID ucznia] wiczenie 2 Kolejnym zadaniem b dzie wy wietlenie informacji o ocenach z matematyki wraz z imieniem i nazwiskiem ucznia. SELECT Ucze .Imi , Ucze .Nazwisko, Ocena.Ocena FROM Ucze INNER JOIN Ocena ON Ucze .[ID ucznia] = Ocena.[ID ucznia] WHERE Ocena.[ID przedmiotu]='MAT' ORDER BY Ucze .Nazwisko; Przeł cz si na Widok arkusza danych i zobacz efekt. Zapisz kwerend jako oceny z matematyki. Operatory teoriomnogo ciowe i proste funkcje wiczenie 1 Mamy za zadanie wy wietli ilo wszystkich osób w szkole (uczniów i nauczycieli). Do zsumowania tabel Nauczyciel i Ucze posłu ymy si operatorem UNION SELECT Imi ,Nazwisko FROM Nauczyciel UNION SELECT Imi , Nazwisko FROM Ucze Sprawd efekt zapytania. Zapisz kwerend pod nazw wszyscy. wiczenie 2 Wró my do pytania dyrektora o liczb ocen dopuszczaj cych wystawionych na koniec semestru z matematyki. SELECT COUNT([Ocena]) FROM Ocena WHERE [Ocena]=2 And [ID przedmiotu]='MAT' And [Zdobyta za]='semestr'; Sprawd efekt zapytania. Zapisz kwerend pod nazw dopuszczaj ce wersja 2. wiczenie 3 Mamy za zadanie przygotowa zestawienie zawieraj ce redni ocen klasy z ka dego przedmiotu. Do obliczenia redniej u yj funkcji AVG . Parametrem dla funkcji b dzie lista wszystkich ocen pogrupowana według nazw przedmiotów. SELECT Avg(Ocena) AS rednia, [Nazwa przedmiotu] FROM [Lista przedmiotów] INNER JOIN Ocena ON [Lista przedmiotów].[ID przedmiotu] = Ocena.[ID przedmiotu] GROUP BY [Nazwa przedmiotu]; Sprawd efekt zapytania. Zapisz kwerend pod nazw rednia ocen. Formularze wiczenie 1 – tworzenie formularza Utwórz formularz na podstawie tabeli Ucze w tym celu w bazie danych wybierz obiekt Formularze -> Nowy -> Kreator formularzy. Wybierz tabel Ucze . Wybierz wszystkie dost pne pola. Wybierz układ kolumnowy. Wybierz odpowiadaj cy Ci styl i naci nij Zako cz. W podobny sposób wykonaj kolejny formularz na podstawie tabeli Nauczyciel. wiczenie 2 – tworzenie formularza w widoku projektu Po wykonaniu powy szych formularzy utwórz formularz w Widoku projektu i zapisz go pod nazw Start. wiczenie 3 – korzystanie z przybornika (dodaj etykiet i przyciski otwieraj ce formularze). Z przybornika wybierz formatk Etykieta i podpisz DZIENNIK LEKCYJNY. Z Przybornika wybierz Przycisk polecenia po przeniesieniu przycisku na formularz pojawi si Kreator przycisków polece . Wybierz Operacje na formularzach -> Otwórz formularz -> Ucze -> Dalej -> Wybierz opcj , e na przycisku ma by tekst -> Wpisz nazw dla przycisku Ucze -> Naci nij Zako cz. Nast pnie na formularzu opisz przycisk jako Dane uczniów W podobny sposób dodaj przycisk dla formularza Nauczyciel i opisz przycisk jako Dane nauczycieli. Widok formularza Start. wiczenie 4 – dodaj przycisk otwieraj cy kwerend Otwórz formularz Nauczyciel. Powi ksz obszar formularza a nast pnie z przybornika dodaj przycisk polecenia. Wybierz Ró ne -> Uruchom kwerend . Wybierz kwerend dodaj nauczyciela. Wybierz, e na przycisku ma by tekst. Opisz przycisk jako Dodaj nauczyciela. wiczenie 4 – Samodzielnie utwórz przycisk zamykaj cy formularz Start. Raporty Utwórz raport zawieraj cy zestawienie rednich ocen klasy z ka dego przedmiotu. W tym celu w bazie danych wybierz obiekt Raporty -> Nowy -> Kreator raportów. Wybierz kwerend rednia ocen dodaj pola rednia i Nazwa przedmiotu i naci nij Dalej. Nie dodawaj poziomów drukowania, kliknij Dalej. Posortuj rekordy wg redniej. Wybierz układ kolumnowy - > Dalej. Wybierz odpowiadaj cy Ci Styl -> Dalej. Tytuł raportu pozostaw rednia ocen. Zako cz i zobacz efekty swojej pracy.