Bazy danych. Wykład III Tabele. Copyrights by Arkadiusz Rzucidło 1



Podobne dokumenty
Pojęciowy model danych etap 1 (identyfikacja obiektów) Pojęciowy model danych etap 2A (powiązania obiektów)

Autor: dr inż. Katarzyna Rudnik

Systemy baz danych. mgr inż. Sylwia Glińska

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Przykład, który rozpatrujemy to układ Lekarz- Pacjent. Pierwszą czynnością jaką trzeba wykonać jest odpowiedź na kilka pytań

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

WPROWADZENIE DO BAZ DANYCH

Bazy danych Wykład zerowy. P. F. Góra

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0

Projektowanie relacyjnych baz danych

Moduł 5 - Bazy danych

Uzupełnij pola tabeli zgodnie z przykładem poniżej,

Tworzenie bazy danych na przykładzie Access

Zwróćmy uwagę w jakiej lokalizacji i pod jaką nazwą zostanie zapisana baza (plik z rozszerzeniem *.accdb). Nazywamy

Microsoft Access zajęcia 1 2 Pojęcia bazy, projektowanie tabel, ustawianie relacji

Bazy danych Karta pracy 1

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

Krzysztof Kluza proste ćwiczenia z baz danych

Wykład I. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0

T A B E L E i K W E R E N D Y

1. Zarządzanie informacją w programie Access

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1

Tabele w programie Microsoft Access

Wykład 2. Relacyjny model danych

Bazy danych Access KWERENDY

Relacyjne bazy danych

WPROWADZENIE DO OBSŁUGI BAZ DANYCH MS ACCESS 2007(2010)

Projektowanie baz danych

Bazy danych i systemy informatyczne materiały laboratorium

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

2017/2018 WGGiOS AGH. LibreOffice Base

Dział Temat lekcji Ilość lekcji. godz. 1 Organizacja zajęć Omówienie programu nauczania 3

Technologia informacyjna

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Projektowanie Systemów Informacyjnych

Tworzenie projektu bazy danych z kreatorem odnośników - Filmoteka. Projekt tabel dla bazy Filmoteka

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty

Technologia informacyjna. Bazy danych MS Access

Konspekt do lekcji informatyki dla klasy II gimnazjum. TEMAT(1): Baza danych w programie Microsoft Access.

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

RELACYJNE BAZY DANYCH

Tabele w programie Microsoft Access

Kontrolowanie poprawności danych

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

ACCESS 2007 Tworzymy bazę danych plik: filmoteka.accdb

Baza danych. Baza danych to:

Bazy danych TERMINOLOGIA

PTI S1 Tabele. Tabele. Tabele

Bazy danych - wykład wstępny

Etap 1 Projektowanie tabeli która będzie przechowywać informacje na temat książek.

Nie przegrzewaj mózgu wrzuć dane do bazy!

5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel

BAZY DANYCH Formularze i raporty

Bazy danych. Andrzej Łachwa, UJ, /14

Wykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.

ZASADY PROJEKTOWANIA BAZ DANYCH

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

2. Tabele w bazach danych

Bazy danych. Algebra relacji

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

Sposób tworzenia tabeli przestawnej pokażę na przykładzie listy krajów z podstawowymi informacjami o nich.

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

1. Podstawowe wiadomości o bazach danychwprowadzenie

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Rozwiązanie. Uruchom program Access 2007.

Program nauczania. Systemy baz danych. technik informatyk

Obsługa pakietu biurowego OFFICE

Wprowadzenie do baz danych

Model relacyjny. Wykład II

Wykład II. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

Joyce Cox Joan Lambert. Microsoft Access Krok po kroku. Przekład: Jakub Niedźwiedź

ECDL. Moduł nr 5. Użytkowanie bazy danych

ECDL/ICDL Zaawansowane użytkowanie baz danych Moduł A3 Sylabus, wersja 2.0

OPRACOWANIE: SŁAWOMIR APANOWICZ

Baza danych. Program: Access 2007

Podstawowe zagadnienia z zakresu baz danych

BAZY DANYCH Panel sterujący

Wykład III. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

Opis systemu MS Access.

PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA

Plan. Raport. Tworzenie raportu z kreatora (1/3)

PODSTAWOWE POJĘCIA BAZ DANYCH

INFORMATYKA W ZARZĄDZANIU LOTNICTWEM -LABORATORIUM

WYMAGANIA EDUKACYJNE Z PRZEDMIOTU SYSTEMY BAZ DANYCH

wprowadzania: wejdź do kreatora i wybierz Kod Pocztowy: ;;-

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

PRZYKŁAD. Prosta uczelnia. Autor: Jan Kowalski nr indeksu: (przykładowy projekt)

Pojęcie systemu informacyjnego i informatycznego

Wprowadzenie do baz danych

z ęś ć praktyczna Instytuty ID_instytutu Nazwa_instytutu Kierunki ID_kierunku Nazwa_kierunku ID_instytutu

Materiały do laboratorium MS ACCESS BASIC

LABORATORIUM 6: ARKUSZ MS EXCEL JAKO BAZA DANYCH

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Bazy danych Access KWERENDY

Microsoft Access zajęcia 3 4. Tworzenie i wykorzystanie kwerend, formularzy i raportów

Tabela wewnętrzna - definicja

3. Tabele. Tabele Projektowanie tabel

Transkrypt:

Bazy danych Wykład III Tabele Copyrights by Arkadiusz Rzucidło 1

Dwanaście zasad Codda Informacje są reprezentowane logicznie w tabelach Dane są logicznie dostępne przez podanie nazwy tabeli, wartości klucza podstawowego i nazwy kolumny Wartości null są traktowane w jednolity sposób jako brakujące informacje ; Nie mogą być traktowane jako puste informacje lub jako zera Metadane są umieszczane w bazie jak zwykłe dane Język obsługi danych ma możliwość definiowania danych i perspektyw, więzów integralności, przeprowadzania autoryzacji, obsługi transakcji i manipulowania danymi Perspektywy reagują na zmianę swoich tabel bazowych; Zmiana w perspektywie powoduje zmianę w tabeli bazowej Copyrights by Arkadiusz Rzucidło 2

Dwanaście zasad Codda Istnieją pojedyncze informacje pozwalające na wyszukiwanie, wstawianie i usunięcie danych Operacje użytkownika są logiczne oddzielone od fizycznych danych i metod dostępu Operacje użytkownika pozwalają na zmianę schematu bazy danych bez konieczności tworzenia bazy od nowa Więzy integralności są umieszczone w metadanych, nie w zewnętrznej aplikacji Język manipulowania danymi powinien działać bez względu na to jak i gdzie są rozmieszczone fizyczne dane oraz nie powinien wymagać zmian, gdy fizyczne dane są zcentralizowane lub rozproszone Operacje na pojedynczych rekordach przeprowadzane w systemie podlegają tym samym zasadom i więzom co operacje na zbiorach danych Copyrights by Arkadiusz Rzucidło 3

Czym jest tabela? Stwierdzenie Tabela może być mylące W modelu relacyjnym tabela nie jest listą ale zbiorem W jednej tabeli nie mogą wystąpi dwie takie same krotki Musi istnieć klucz identyfikujący każdą z krotek Kolejność w jakiej występują krotki nie ma znaczenia Copyrights by Arkadiusz Rzucidło 4

Czym jest tabela? Tabela (relacja) jest modelem abstrakcyjnym Ma swoje atrybuty i więzy Zbiór wszystkich projektów tabel nazywa się schematem bazy danych Schemat wraz z informacjami o użytkownikach i ich uprawnieniach stanowi metadane (dane o danych) Schemat tabeli w zasadzie nie zmienia się w czasie Zbiór wszystkich krotek danej tabeli ( zawartość tabeli ) może zmieniać się w czasie Zbiór taki nazywa się instancją tabeli (relacji) Instancję istniejącą w tym czasie nazywa się instancją bieżącą Copyrights by Arkadiusz Rzucidło 5

Projekty tabel Tworzenie tabeli nie jest proste Nie każdy pomysł na projekt jest dobry Przykład: Jak w tabeli wyszukać konkretne imiona? RBDMS potrafią działać na łańcuchach ale tego typu działania nie są celem tych funkcji TOsoba ImięNazwisko DataUr Płeć Ignacy Janowski 17.03.1936 M Karol Janowski 23.11.1957 M Ludwik Janowski 03.02.1983 M Patrycja Janowska 07.01.2005 K Copyrights by Arkadiusz Rzucidło 6

Projekty tabel Nr zamówienia Id dostawcy Nazwa dostawcy Adres dostawcy Id części Nazwa części ilość 001 010 Seagate Borsucza 8 054 Dysk twardy 30 055 Sterownik I/O 50 002 020 Toshiba Wilcza 3 070 Napęd CD 10 Powtarzające się części w zamówieniach 003 010 Seagate Borsucza 8 054 Dysk twardy 40 070 Napęd CD 15 Nr Id dostawcy Nazwa Adres Id części Nazwa części ilość zamówienia dostawcy dostawcy 001 010 Seagate Borsucza 8 054 Dysk twardy 30 001 010 Seagate Borsucza 8 055 Sterownik I/O 50 002 020 Toshiba Wilcza 3 070 Napęd CD 10 003 010 Seagate Borsucza 8 054 Dysk twardy 40 003 010 Seagate Borsucza 8 070 Napęd CD 15 Copyrights by Arkadiusz Rzucidło 7

Diagram związków encji Copyrights by Arkadiusz Rzucidło 8

Model w świecie RBDMS Jedne model (uniwersalny model świata rzeczywistego) Różne potrzeby (nie zawsze potrzeba armaty by zabić komara) Różne rozwiązania (potrzeba matką wynalazków) Różne implementacje Jako przykład RBDMS MS Access MS Access 97 MS Access 2000 MS Access XP Copyrights by Arkadiusz Rzucidło 9

Tworzenie nowej bazy danych Zbliżenie się do ideału jest wystarczająco idealne Typy obiektów bazy danych Microsoft Access 2002 Tabel - Fizyczne magazyny danych Kwerendy -Dynamiczne zestawy rekordów tworzone według określonych kryteriów Formularze -Lokalny interfejs użytkownika Raporty - Zestawienia i podsumowania zestawów rekordów bazy danych Strony - Interfejs WWW bazy danych Makra Makropolecenia; zestawy poleceń Moduły - Zestawy procedur i funkcji w języku VBA Copyrights by Arkadiusz Rzucidło 10

Tworzenie nowej bazy danych Zbliżenie się do ideału jest wystarczająco idealne Typy obiektów bazy danych Microsoft Access 2002 Tabel - Fizyczne magazyny danych Kwerendy -Dynamiczne zestawy rekordów tworzone według określonych kryteriów Formularze -Lokalny interfejs użytkownika Raporty - Zestawienia i podsumowania zestawów rekordów bazy danych Strony - Interfejs WWW bazy danych Makra Makropolecenia; zestaw poleceń Moduły - Zestaw procedur i funkcji w języku VBA Copyrights by Arkadiusz Rzucidło 11

Projektowanie tabel Na podstawie opracowanego diagramu związków encji Właściwy układ to Encja ERD tabela RBDMS Tworzenie struktury tabel Tabele słownikowe Pozostałem tabele danych Dobór odpowiednich typów dla każdego z argumentów encji Wyznaczenie kluczy w tabelach Realizacja połączeń między kolumnami tabel (zgodnie z ERD) Utworzenie relacji Wypełnianie tabel danymi Tabele słownikowe Pozostałe tabele Copyrights by Arkadiusz Rzucidło 12

Tworzenie tabel Tworzenie tabel jest pierwszą i najważniejszą czynnością nowej bazy danych Poprawnie utworzony plan tabel wpływa na efektywność budowanej aplikacji Tworzenie tabeli: Jako własny projekt Za pomocą kreatora Bezpośrednio, wprowadzając dane Copyrights by Arkadiusz Rzucidło 13

Tworzenie tabeli Copyrights by Arkadiusz Rzucidło 14

Własności pól Typ danych Opis Rodzaj informacji, które będą przechowywane w polu: tekst, data/godzina, liczba, nota, itp. Każdy z typów ma swoje ograniczenia np. tekst - 255 znaków, nota 65535 znaków. Opis informacji przechowywanych w danym polu Jest wyświetlany na pasku stanu gdy pole jest edytowane w formularzu Rozmiar pola Maksymalna liczba znaków jak może być zapisana w polu. Jest używana tylko dla pól tekst Jeśli typ pola to liczba można wybrać z grupy: bajt, liczb całkowita, długa liczba całkowita, pojedyncza precyzja, podwójna precyzja Copyrights by Arkadiusz Rzucidło 15

Własności pól Format Pozwala na zdefiniowanie sposobu, jak dane będą wyświetlane Np. Czwartek Marzec 12, 2005 r. Miejsca dziesiętne Własność określana tylko dla liczb Maska wprowadzania Własność wszystkich typów prócz Tak/Nie i Memo. Pozwala na ustalenie maski do poprawnego wprowadzania danych. Np. (017) 55-66-777 Tytuł Etykieta pola na formularzu, raporcie i kwerendzie. Jeśli nie jest zdefiniowana automatycznie przypisywana jest nazwa pola Copyrights by Arkadiusz Rzucidło 16

Własności pól Reguła poprawności Reguła pozwalająca uniknąć wprowadzania błędnych danych Np. M lub K dla pola płeć Tekst reguły sprawdzania (Komunikat o błędzie) Tekst komunikatu będzie wyświetlany, gdy reguła poprawności zostanie naruszona. Wartość domyślna Wartość zostanie wprowadzona do pola automatycznie dla nowych rekordów Wymagane Czy wprowadzenie danych do pola jest konieczne Zerowa długość dozwolona Czy dopuszczalne jest wprowadzenie ciągu znaków określających wartość o zerowej długości Copyrights by Arkadiusz Rzucidło 17

Własności pól Indeksowane Dopuszcza trzy możliwości: Nie, Tak (powtórzenia OK.), Tak (Bez powtórzeń) Pole można indeksować jeśli budowana aplikacja ma wyszukiwać lub sortować rekordy według tego pola. Indeksowanie pola przyśpiesza te operacje. Indeksowanie zwalnia operację wprowadzania rekordów do bazy. Copyrights by Arkadiusz Rzucidło 18

Typy danych Tekst Zapis alfanumeryczny Typ ten akceptuje każdy znak lecz ograniczony jest do 255 znaków Dla pola można ustalić długość krótszą niż 255 znaków, lecz nie zaoszczędzi to miejsca na dysku jak to ma miejsce w innych systemach Access pamięta tylko liczbę bajtów koniecznych do przechowania informacji Operacje arytmetyczne na danych z pola można wykonać dopiero po ich konwersji Liczba Przyjmuje tylko dane liczbowe Można określić poziom precyzji dla danych Liczby można zapisywać również w polu typu tekst Jeśli na danych w polu będą przeprowadzane operacje arytmetyczne należy dla niego wybrać typu Liczby Copyrights by Arkadiusz Rzucidło 19

Ustawienie Opis Dokładność dziesiętna Rozmiar miejsca na przechowywanie Bajt Przechowuje liczby z przedziału od 0 do 255 (bez ułamków). Brak 1 bajt Dziesiętne Przechowuje liczby z przedziału od -10^38-1 do 10^38-1 (.adp) Przechowuje liczby z przedziału od -10^28-1 do 10^28-1 (.mdb) 28 12 bajtów Liczba całkowita Przechowuje liczby z przedziału od -32 768 do 32 767 (bez ułamków). Brak 2 bajty Liczba całkowita długa (Ustawienie domyślne) Przechowuje liczby z przedziału od -2 147 483 648 do 2 147 483 647 (bez ułamków). Brak 4 bajty Pojedyncza precyzja Przechowuje liczby z przedziału od -3,402823E38 do -1,401298E-45 w wypadku wartości ujemnych oraz od 1,401298E-45 do 3,402823E38 w wypadku wartości dodatnich. 7 4 bajty Podwójna precyzja Przechowuje liczby z przedziału od -1,79769313486231E308 do -4,94065645841247E-324 w wypadku wartości ujemnych oraz od 4,94065645841247E-324 do 1,79769313486231E308 w wypadku wartości dodatnich. 15 8 bajtów Identyfikator replikacji Globalny identyfikator unikatowy (GUID) Nie dotyczy 16 bajtów Copyrights by Arkadiusz Rzucidło 20

Typy danych Data/Godzina Specjalistyczna odmiana typu Liczba przeznaczona do przechowywania danych o datach i czasie. Pozwala na wykonywanie operacji arytmetycznych Walutowy Specjalizowana odmiana typu Liczba służąca do przechowywania danych finansowych Określana jest dokładnie liczba miejsc dziesiętnych Autonumer Automatycznie wstawiane wartości dla nowego rekordu Własność Nowe Wartości: Przyrostowy, Losowy Copyrights by Arkadiusz Rzucidło 21

Typy danych Tak/Nie Dopuszcza tylko jedną z dwóch wartości Tak/Nie, Prawda/Fałsz lub Włączony/Wyłączony w zależności od ustawień pola Format Używane do przechowywania pola flag Kreator odnośników Łączy pole z wartością przechowywaną w innym obiekcie bazy danych innej tabeli lub kwerendy Hiperłącze Przechowuje dane zgodne z formatem UNC (Universal Naming Convention), który ma postać: \\nazwa_serwera\ścieżka\nazwa_pliku lub URL (Universal Resource Location), np. http://www.nazwa_serwera.dmena Copyrights by Arkadiusz Rzucidło 22

Typy danych Obiekt OLE Pozwala połączyć lub osadzić obiekt stworzony przez program pełniący rolę serwera OLE. Access jest klientem i serwerem OLE Pole może przechowywać dane binarne Ograniczenie dla pola to wielkość 1GB, lub dostępna ilość wolnego miejsca na dysku Nota (memo) Przeznaczone do przechowywania notatek Dane zapisywane w nim mogą mieć 65 535 znaków Copyrights by Arkadiusz Rzucidło 23

Typy danych Pola typu Nota, Hiperłącze i Obiekt OLE nie mogą być indeksowane Główna zasada to używanie pól typu tekstowego, chyba że: jesteśmy pewni co do tego, że wszystkie dane przechowywane w tym polu będą pasowały do jego typu gdy będzie istniała konieczność wykonywania operacji arytmetycznych Podczas tworzenia tabeli koniecznym jest utworzenie klucza głównego Access posiada mechanizm automatycznego tworzenia klucza podczas zapisywania nowo projektowanej tabeli Copyrights by Arkadiusz Rzucidło 24

Klucze Klucz podstawowy Klucz, który jednoznacznie identyfikuje rekord nazywa się kluczem podstawowym. W tabeli mogą istnieć inne pola o niepowtarzalnych danych, lecz nie będące kluczami podstawowymi. Pola takie nazywa się kluczami potencjalnymi Klucze złożone Jeśli w tabeli nie istnieje jedno pole jednoznaczne dla każdego rekordu konieczne jest utworzenie klucza złożonego. Do stworzenia klucza złożonego konieczne jest kilka pól tabeli. Klucze obce Jest to klucz łączący każdy wiersz jednej tabeli z odpowiednim wierszem drugiej tabeli. Każda tabela może zawierać wiele kluczy obcych. Liczba ta jest zależna od liczby związanych tabel. Copyrights by Arkadiusz Rzucidło 25

Tworzenie tabeli kreator odnośników Copyrights by Arkadiusz Rzucidło 26

Tworzenie tabeli kreator odnośników Copyrights by Arkadiusz Rzucidło 27

Relacje i sprzężenia Relacje definiują związki pomiędzy danymi w tabelach Sprzężenia wykonuje się na potrzeby chwili ; Nie jest to związek trwały Copyrights by Arkadiusz Rzucidło 28

Integralność referencyjna Zarządzanie danymi we właściwy sposób Wymuszanie więzów integralności kaskadowa aktualizacja powiązanego pola Jeśli zmieni się wartość klucza podstawowego w tabeli nadrzędnej, wartość ta będzie zmieniona automatycznie we wszystkich polach kluczy obcych w tabelach podrzędnych Ostrożnie w przypadku kaskadowego usuwania zmiany mogą spowodować usunięcie potrzebnych danych Copyrights by Arkadiusz Rzucidło 29

Ustalanie relacji Copyrights by Arkadiusz Rzucidło 30

Modyfikowanie struktury tabeli Strukturę tabeli można modyfikować Dodawanie pól Usuwanie pól Zmiany nazw i typów już istniejących pól Mechanizmy ochrony zabezpieczające przed nieodpowiedzialną zmianą odwołania do pola, połączenia tabel, itp Copyrights by Arkadiusz Rzucidło 31

Koniec Źródła: J.D.Ullman, J.Widom; Podstawowy Wykład z Systemów Baz Danych Copyrights by Arkadiusz Rzucidło 32