bazy danych – podstawowe pojęcia, wprowadzenie
Transkrypt
bazy danych – podstawowe pojęcia, wprowadzenie
BAZY DANYCH – PODSTAWOWE POJĘCIA, WPROWADZENIE TEORETYCZNE ACCESS – system zarządzania (relacyjną) bazą danych baza danych – zbiór informacji. Przykłady: książka telefoniczna, katalog biblioteczny SZBD – system pozwalający: dodawać, usuwać, edytować informacje w bazie, SZRBD – 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ł. 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: a) jeden-do-jednego: dwie tabele mają dokładnie po jednym rekordzie powiązane ze sobą b) jeden-do-wielu: jeden rekord tabeli może być powiązany z wieloma rekordami innej tabeli c) 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) 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. TABELE: klienci zamówienia pozycje zamówienia ID klienta (podst) Numer zamówienia (podst) Numer zamówienia (obcy) Nazwa Data zamówienia Ilość Ulica ID klienta (obcy) ID towaru Kod Sposób dostawy Cena Miasto Data dostawy Województwo Suma zamówienia Złożony: np. nr_zamówienia+ID towaru Podstawowe operacje w bazie danych a) 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 b) 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 1. 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! 2. nie wolno zapisać do tabeli rekordu o nieznanej wartości klucza podstawowego (tu przydaje się np. autonumer) 3. w jednym rekordzie nie można wielokrotnie ująć tego samego atrybutu lub grupy atrybutów. ETAPY TWORZENIA RBD a) określenie zbiorów niezbędnych danych (lista danych + krótki opis, do czego będą służyć) b) określenie zbiorów pól w tabelach (czyli podział bazy na tabele) c) określenie kluczy podstawowych (dla informatyków: niech doczytają o tzw. normalizacji danych – do 3 postaci normalnej włącznie) d) ustalenie własności pół Pracownicy = {Id_prac, Nazwisko, Nazwa_uczelni, Adres} Id_prac Nazwisko Nazwa_uczelni Adres 101 Kowalski PJWSTK 123 Kalinowski WSI Zamiany 15 109 Jaworski Zamiany 15 102 Makowski PJWSTK Koszykowa 86 105 Rudziak Zamiany 15 WSI WSI Koszykowa 86 1. Redundancja: adres uczelni powtarza się dla każdego zatrudnionego w niej pracownika. 2. Anomalie przy modyfikacji: uaktualniony adres uczelni w jednym wierszu pozostaje niezmieniony w innych. 3. Anomalie przy wstawianiu: trudno wstawić uczelnię bez pracownika; Id_prac stanowi klucz i nie może być NULL. 4. Anomalie przy usuwaniu: usuwając wszystkich pracowników usuwamy uczelnię. Przyczyna: złączenie w jednej encji dwóch różnych rodzajów obiektów (encji): Pracownicy = {Id_prac, Nazwisko, Nazwa_uczelni} Uczelnie = {Nazwa_uczelni, Adres} Poprawienie schematu polega na rozbiciu początkowego schematu na dwie tabele każda reprezentująca osobny typ obiektów czyli odpowiednio pracowników i uczelnie. Encja (ang. entity) w bazach danych to reprezentacja wyobrażonego lub rzeczywistego obiektu (grupy obiektów) stosowana przy modelowaniu danych podczas analizy informatycznej. Formalnie jest to pojęcie niedefiniowalne, a podstawową cechą encji jest to, że jest rozróżnialna od innych encji. Przykłady encji (i atrybuty w encji): Osoba (imię, nazwisko, PESEL) Pojazd (wysokość, szerokość, długość, sposób poruszania się)