1 / 21

Relacyjny model danych

Relacyjny model danych. Wprowadzenie do systemów baz danych. Podstawowe wymagania stawiane modelowi danych. Unikanie nadmiarowości danych (redundancji) – jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających się grup

necia
Download Presentation

Relacyjny model danych

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Relacyjny model danych Wprowadzenie do systemów baz danych

  2. Podstawowe wymagania stawiane modelowi danych • Unikanie nadmiarowości danych (redundancji) – jedna informacja powinna być wpisana do bazy danych tylko jeden raz • Problem powtarzających się grup • Wypisując wiele faktur dla jednego odbiorcy, na każdej fakturze należy umieścić dane tego odbiorcy, w bazie danych dane odbiorcy powinny być zapisane tylko w jeden raz

  3. Relacyjny model danych • Opublikowany przez E.F. Codda w 1969 • Wywodzi się z teorii zbiorów • Jedyną strukturą danych jest RELACJA • Relacja zapisywana jest w formie tabeli • Relacja (tabela) spełnia zbiór zasad

  4. Relacja w języku potocznym • sprawozdanie z ... • stosunek między (dwoma lub więcej) przedmiotami, pojęciami wielkościami itp., zależność między nimi • droga pociągu ... Popularny słownik języka polskiego

  5. Relacja (matematyka) • Relacją n-argumentową nazywamy podzbiór iloczynu kartezjańskiego n zbiorów • Relacja jest zwykle takim podzbiorem iloczynu kartezjańskiego, którego elementy spełniają pewien warunek, np. formułę zdaniową n zmiennych • Intuicyjnie relacja oznacza związek pomiędzy elementami zbiorów • Elementami n-argumentowej relacji są n-elementowe uporządkowane zbiory zwane n-elementowymi krotkami

  6. Reguły, które musi spełniać relacja • Każda relacja w bazie danych ma jednoznaczną nazwę • Każda kolumna w relacji ma jednoznaczną nazwę w ramach jednej relacji • Wszystkie wartości w kolumnie muszą być tego samego typu • Kolejność kolumn w relacji nie jest istotna • Każdy wiersz w relacji musi być różny • Porządek wierszy nie jest istotny • Każde pole leżące na przecięciu kolumny i wiersza powinno zawierać wartość atomową (w jednym polu relacji nie jest dozwolony zbiór wartości)

  7. Terminologia

  8. Tabela • Tabela składa się z nagłówka (heading) i treści (body) – w tej formie jest najczęściej zapisywana jako plik • Nagłówek tabeli – nazwy kolumn tabeli • Treść tabeli – wiersze danych • Liczba kolumn – stopień tabeli • Liczba wierszy – liczebność tabeli

  9. Dziedzina • Dziedzina (domain) to zbiór wartości, z których pochodzą elementy pojawiające się w kolumnach tabeli • Integralność dziedziny oznacza, że wartości atrybutów przyjmują tylko poprawne wartości • Aby wymusić poprawne modyfikacje można użyć (w języku SQL) klauzuli CHECK

  10. Klucz główny • Klucz główny (primary key)to jedna lub więcej kolumn tabeli, w których wartości jednoznacznie identyfikują każdy wiersz w tabeli • Klucz główny wymusza integralność encji • Przykłady kluczy głównych (podstawowych) • Imię + nazwisko + imię ojca + data urodzenia • PESEL • NIP • Numer dowodu osobistego • Numer paszportu • Numer albumu

  11. Właściwości klucza głównego • Wartość klucza głównego musi być zawsze określona – nie może zawierać NULL • Wartości klucza głównego muszą być unikatowe w obrębie klucza • Poszczególne wiersze (krotki) rozpoznajemy po zawartości klucza głównego

  12. Klucze obce • Klucze obce są sposobem łączenia danych przechowywanych w różnych tabelach • Klucz obcy (foreign key) jest kolumną lub grupą kolumn tabeli, która czerpie swoje wartości z tej samej dziedziny co klucz główny tabeli powiązanej z nią w bazie danych • Klucz obcy identyfikuje wiersz w powiązanej tabeli

  13. Przykład klucza obcego oceny studenci

  14. Klucz obcy – związek jeden do wiele Diagram standardu Integration DEFinition (IDEF1X) MS Access Diagram MS SQL Server

  15. Właściwości klucza obcego • Wartość klucza obcego powinna wskazywać na istniejący wiersz w powiązanej tabeli albo być nieokreślona (NULL) • Jeśli wartość klucza obcego różna od NULL nie wskazuje na istniejący wiersz w powiązanej tabeli mówimy, że naruszona jest integralność referencyjna bazy danych • Klucz obcy odnosi się zwykle do klucza podstawowego innej tabeli, i identyfikuje jeden wiersz w tej tabeli

  16. Symbol NULL • NULL stosujemy wtedy, kiedy wartość atrybutu jest nieokreślona (nieznana) • NULL nie porównuje żadnej informacji niezależnie od jej wartości • NULL nie dobiera NULL – NULL nie jest ani równe, ani różne NULL • NULL nie ma żadnej wartości • Istnienie NULL zmienia logikę z dwuwartościowej (prawda, fałsz) na trójwartościową (prawda, fałsz, nieznane (NULL))

  17. Tabela prawdy AND (i) – koniunkcja

  18. Tabela prawdy OR (lub) – alternatywa

  19. Integralność bazy danych • Integralność encji – relacja musi mieć unikalny klucz główny, który powinien być unikatowy i nie zawierać wartości NULL – klucz główny uniemożliwia wystąpienie powtórzeń wierszy • Integralność referencyjna – wszystkie wartości kluczy obcych odnoszą się do istniejącej krotki albo są NULL • Integralność dziedziny - wymuszanie poprawnych wartości dziedziny – niektóre atrybuty nie są ze sobą powiązane logicznie, ale są powiązane w rzeczywistości

  20. Kryteria relacyjności bazy danychCodd 1985 0. Każdy system, który pretenduje do miana systemu zarządzania relacyjnymi bazami danych, musi być w stanie zarządzać danymi wyłącznie dzięki swoim funkcjom relacyjnym • Baza danych gromadzi wszystkie informacje wewnątrz krotek • Każda wartość może być dostępna przez kombinację nazwy relacji, nazwy atrybutu i wartości klucza podstawowego tej krotki • Wartości NULL wprowadzane są systematycznie • Katalog bazy danych jest przechowywany wewnątrz jednej lub wielu relacji, które mogą być czytane przez autoryzowanych użytkowników • System wdraża język zapytań • System musi być zdolny do uaktualniania przez perspektywę • System musi być zdolny do wstawiania, aktualizowania i usuwania grup krotek, nie tylko jednej krotki na raz

  21. Kryteria relacyjności bazy danychCodd 1985 • Programy, za pomocą których manipuluje się bazą danych, są niezależne od tego, jak baza jest fizycznie zorganizowana • Programy, za pomocą których baza danych jest przetwarzana, są niezależne od tego, jak baza jest logicznie zorganizowana wewnętrznie • Zasady integralności danych powinny być możliwe do zdefiniowania wewnątrz języka zapytań i przechowywane w katalogu, a nie w aplikacji • Baza danych powinna działać tak samo, niezależnie od tego, czy pracuje na pojedynczej maszynie, czy jest rozproszona przez sieć • Nie można użyć języka niższego rzędu do obalenia jedności zasad bazy danych Żaden z istniejących SZBD nie spełnia wszystkich kryteriów

More Related