Slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: 3472678, fax: 3461757,

Slides:



Advertisements
Podobne prezentacje
Teoretyczne podstawy tworzenia systemów relacyjnych baz danych
Advertisements

Projektowanie baz danych
Modelowanie logiczne (dla relacyjnych SZBD)
Projektowanie bazy danych
S – student, P – przedmiot, W – wykładowca
Relacyjny model danych
Wprowadzenie do systemów baz danych
MS Access 2000 Relacje Piotr Górczyński 2005.
Relacyjny model danych
Inżynieria oprogramowania
WPROWADZENIE DO BAZ DANYCH
MS Access 2000 Normalizacja Paweł Górczyński 2005.
Projektowanie Aplikacji Komputerowych
08: ERD – podencje, łuki i pułapki
Normalizacja : Głównym celem projektowania bazy przeznaczonej dla systemu relacyjnego jest właściwa reprezentacja danych, związków i więzów. W identyfikowaniu.
POWTÓRZENIE Metodologia : Pojęcia:
Projektowanie relacyjnych baz danych
Modele baz danych - spojrzenie na poziom fizyczny
Projektowanie struktury logicznej (schematu) relacyjnych baz danych
Wykład 3 Analiza i projektowanie strukturalne
Teoria relacyjnych baz danych
Bazy Danych II prowadzący: mgr inż. Leszek Siwik
Zależności funkcyjne.
PROJEKTOWANIE TABEL W PROGRAMIE: ACCESS
DIAGRAMY ER 2 (ENTITY-RELATIONSHIP DIAGRAMS 2) Ćwiczenia 2.
Diagramy ER (Entity-relationship diagrams)
O relacjach i algorytmach
Bazy danych.
Systemy baz danych Wykład 1
Budowanie tabel i relacji
Informatyka Relacyjne bazy danych.
Andrzej Macioł Bazy danych – model relacyjny – cz. 1 Andrzej Macioł
Jak zacząć w MS SQL? USE master; GO IF DB_ID (Nbaza') IS NOT NULL DROP DATABASE baza; GO CREATE DATABASE baza; GO USE baza; GO.
Wybrane zagadnienia relacyjnych baz danych
WPROWADZENIE DO BAZ DANYCH
Relacyjne bazy danych Tworzenie bazy danych Marzena Nowakowska Katedra Informatyki Stosowanej, WZiMK, PŚk p C dostęp do materiałów:
Model relacyjny.
Bazy danych 1 Literatura: Paul Benon-Davies – Systemy baz danych
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
1 Każdy obiekt jest scharakteryzowany poprzez: tożsamość – daje się jednoznacznie wyróżnić; stan; zachowanie. W analizie obiektowej podstawową strukturą
Modelowanie obiektowe Diagramy klas
Projektowanie relacyjnych baz danych – postacie normalne
Projektowanie bazy danych
Łódź 2008 Banki danych WYKŁAD 2 dr Łukasz Murowaniecki T-109.
Wykład I Podstawy relacyjnych baz danych Powtórzenie wiadomości
Temat 3: Integralność danych. Integralność danych, określana również mianem spójności danych, jest to funkcja SZBD, która gwarantuje, że dane nie zostaną.
Michał Krawczykowski kl. IIIB
Definiowanie kluczy w tabelach RBD
Model obiektowy bazy danych
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Projektowanie relacyjnych baz danych – diagramy związków encji
Hurtownie i eksploracja danych
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Projektowanie postaci formularza:
Modelowanie model związków encji
Bazy Danych Wprowadzenie
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
1 W wykładzie 2 zaprezentowana jest podstawowa metoda tworzenia schematu relacyjnej bazy danych. Jest ona dwustopniowa. W pierwszej fazie projektujemy.
Modelowanie Danych (ERD) – część 1 (Wspomaganie Modelowania danych)
Bazy danych. Baza danych (database) – magazyn danych – informacji powiązanych tematycznie, umożliwiający ich wyszukiwanie według zadanych kryteriów Baza.
Temat: Tworzenie bazy danych
Transformacja modelu EER do modelu relacyjnego
Indeksy.
Nieprawidłowo zaprojektowana tabela
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Technologie Informacyjne Bazy danych
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: , fax: ,

slajd 2© J.Rumiński Projektowanie relacyjnych baz danych -Specyfikacja – język naturalny, -Diagramy związków encji (ERD – Entity-Relationship Diagrams), -Diagramy relacyjne (odwzorowanie ERD-DR), -Diagramy relacyjne a SQL.

slajd 3© J.Rumiński (na podstawie James Larson, Carol Larson, EVALUATION OF FOUR LANGUAGES FOR SPECIFYING CONCEPTUAL DATABASE DESIGNS, Data Management Handbook, CRC Press, 1999). Grupa encji Atrybut

slajd 4© J.Rumiński ERD - Peter Chen w 1976 roku, inna notacja IDEF1X standaryzowana przez wojsko. Encja – byt, konkretny i jednostkowy egzemplarz, to co istnieje (np. Kowalski). Atrybut – cecha charakterystyczna encji (np. kolor oczu). Atrybut reprezentowany jest na diagramach ZE poprzez owal. Grupa/zbiór encji – zgrupowane encje o tej samej charakterystyce-atrybutach (np. studenci). Zbiór encji reprezentowany jest na diagramach ZE przez prostokąt. Klucz – zbiór atrybutów, których wartości zapewniają unikalność encji – ograniczenie wartości atrybutów (key constraint). Klucz reprezentowany jest na diagramach ZE poprzez podkreślenie nazwy atrybutu/atrybutów. Zbiór związków – związki pomiędzy encjami, jeden-do-wielu; wiele-do-jednego; wiele- do-wielu.

slajd 5© J.Rumiński

slajd 6© J.Rumiński Związki – związek jeden do wielu i wiele do jednego

slajd 7© J.Rumiński

slajd 8© J.Rumiński Związki –wiele do wielu

slajd 9© J.Rumiński Hierarchia

slajd 10© J.Rumiński Reguły składni diagramów ZE. Często weryfikowane przez narzędzia wspomagające projektowanie baz danych. 1. Każdy atrybut jest powiązany z dokładnie jednym zbiorem encji lub zbiorem związków. (Nie mogą istnieć odseparowane atrybuty, lub powiązane z wieloma zbiorami encji lub relacji). 2. Każdy zbiór związków jest powiązany z co najmniej dwoma zbiorami encji. 3. Każdy zbiór encji jest pośrednio powiązany z każdym zbiorm encji diagramu. (Jeżeli diagram można podzielić na dwa rozłączne to modelują one dwa schematy a nie jeden schemat bazy danych.)

slajd 11© J.Rumiński Reguły znaczeniowe (semantyczne) diagramów ZE. Konieczna znajomość specyfikacji bazy danych i jej przeznaczenia. 1.Każdy atrybut powinien mieć unikalną nazwę. (Nazwa powinna jednoznacznie wskazywać atrybut. Jeżeli dwa zbiory encji mają atrybuty o tej samej nazwie to należy je przekształcić dodając przedrostek w nazwie, np. nazwy zbioru encji).

slajd 12© J.Rumiński 2. Każdy zbiór encji powinien mieć unikalną nazwę. (Zbiór encji jest odwzorowywany w kolekcję danych np. tabele, których nazwy muszą być unikalne).

slajd 13© J.Rumiński 2. Każdy zbiór encji powinien mieć unikalną nazwę. (Zbiór encji jest odwzorowywany w kolekcję danych np. tabele, których nazwy muszą być unikalne).

slajd 14© J.Rumiński 3. Każdy zbiór związków łączący parę tych samych zbiorów encji powinien mieć unikalną nazwę.

slajd 15© J.Rumiński 4. Żaden atrybut nie może mieć wielu wartości. (Model relacyjny wyklucza wiele wartości jednego atrybutu).

slajd 16© J.Rumiński Pierwsza postać normalna (1NF – First Normal Form): Każdy atrybut tabeli jest niepodzielny (atomowy). Przecięcie krotki i atrybutu zawiera pojedynczą wartość. W tabeli nie mogą znajdować się zatem powtarzające grupy. Przykład złamania reguły: imię i nazwisko jako jedna wartość atrybutu.

slajd 17© J.Rumiński 5. Żaden zbiór encji czy związków nie może posiadać powtarzających się grup. (Problem wielokrotnych zbiorów atrybutów – np. wiele adresów jednego studenta).

slajd 18© J.Rumiński 6. Atrybuty klucza zbioru encji funkcyjnie określają wszystkie wartości atrybutów powiązanych z danym zbiorem encji. ( Atrybut Y relacji R jest funkcyjne zależny od atrybutu X, jeżeli zawsze każdej wartości x atrybutu X odpowiada nie więcej niż jedna wartość y atrybutu Y. Jeżeli Y zależy funkcyjnie od X to X wyznacza Y)

slajd 19© J.Rumiński Zbiór atrybutów Y jest w pełni zależny funkcyjnie od zbioru atrybutów X relacji R, jeżeli X->Y i nie istnieje podzbiór X’ zawarty w X, taki że X’ ->Y. Zbiór atrybutów Y jest w częściowo zależny funkcyjnie od zbioru atrybutów X relacji R, jeżeli X->Y i istnieje podzbiór X’ zawarty w X, taki że X’ ->Y. Druga postać normalna: Relacja R jest w drugiej postaci normalnej (2NF) jeżeli żaden atrybut wtórny tej relacji nie jest częściowo funkcyjnie zależny od żadnego z kluczy relacji R. Inaczej – w krotce (wierszu) nie może być atrybutów (danych) zależnych od fragmentu klucza głównego (np. gdy jest zdefiniowany z więcej niż jednego atrybutu).

slajd 20© J.Rumiński Trzecia postać normalna: Relacja R o danym schemacie jest w trzeciej postaci normalnej (3NF), jeżeli jest w drugiej postaci normalnej i żaden atrybut wtórny tej relacji nie jest przechodnio zależny od klucza głównego tej relacji. Inaczej – atrybuty nie wchodzące w skład klucza głównego zależą jedynie od klucza głównego. Zbiór atrybutów Y jest przechodnio funkcyjnie zależny od zbioru atrybutów X w schemacie relacji R, jeżeli X  Y i istnieje zbiór atrybutów Z, nie będący podzbiorem żadnego klucza schematu relacji R, taki że zachodzi X  Z i Z->Y. →  Y.

slajd 21© J.Rumiński Reguły pragmatyczne (upraszczające model). 1. Usuwać nadmiarowe zbiory związków.

slajd 22© J.Rumiński 2. Rozdziel zbiór encji jeśli jego atrybuty są wykorzystywane w różnych kontekstach (np. optymalizacja czasowa).

slajd 23© J.Rumiński 3. Zamień każdy zbiór związków wiele-do-wielu na dwa jeden-do- wielu i dodatkowy zbiór encji. (Dopasowanie do modelu relacyjnego).

slajd 24© J.Rumiński Dodatkowe wskazówki projektowe. Reguły biznesowe: reguły określające ważne wartości (domenę) atrybutów (liczebność, przynależność, zależności funkcyjne). Opisuj stosowane kody (np. 1 mężczyzna, 2 kobieta) Opisuj elementy danych – jakie wartości atrybutu są dopuszczalne, do kiedy ważne, w jakich jednostkach, itp.

slajd 25© J.Rumiński Odwzorowanie diagramu ZE na model relacyjny Klucze kandydujące, Klucze główne, Tabele, Klucze obce, Typy danych Relacje

slajd 26© J.Rumiński Klucze Każdy podzbiór SK (superkey, superklucz) atrybutów relacji R, taki że dla każdych dwóch krotek k relacji R: k1(SK)<>k2(SK) jest nazywany superkluczem (nadkluczem) relacji R. Kluczem K schematu relacji R nazywamy taki klucz, że nie istnieje żaden inny klucz K’ zawarty w K. Jeżeli relacja R zawiera więcej niż jeden klucz, wówczas nazywane są one kluczami kandydującymi (candidate key). W procesie odwzorowania modelu koncepcyjnego na model relacyjny ustalamy klucze kandydujące, oraz wybieramy z nich klucz główny. Jeżeli żaden z kluczy kandydujących nie spełnia naszych oczekiwań (ze względu na efektywność działania – liczby zamiast łańcuchów znaków) można utworzyć nowy atrybut, spełniający wymagania klucza głównego. Klucz powinien być ograniczony co najmniej zapewnieniem iż jego wartość będzie: NIE PUSTA (NOT NULL) i UNIKALNA (UNIQUE).

slajd 27© J.Rumiński Zbiory encji -> Relacje (tabele) Kolejnym krokiem odwzorowania jest utworzenie relacji/tabel na podstawie zbiorów encji. Spełniwszy wymagania co do diagramów ZE (np. wymagania normalizacji) pozostaje głównie określenie dozwolonych nazw atrybutów oraz określenie typów danych ich zakresu (dziedziny). Klucze obce Następny krok to określenie kluczy obcych (relacji). Konieczna jest weryfikacja czy wybrane środowisko RDBMS obsługuje klucze obce, jakie warunki i ograniczenia, itp. Na tej podstawie można dopiero przygotować odwzorowanie związków modelu ZE na relacje modelu relacyjnego.

slajd 28© J.Rumiński Przykład – normal_forms.html