Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych.

Podobne dokumenty
Bazy danych. Plan wykáadu. Powtórzenie BCNF i 3NF. Nowa forma redundancji. Wykáad 6: Postaci normalne. SQL - zapytania záo*one.

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B

Bazy danych. Plan wykładu. Pierwsza posta normalna. Druga posta normalna. Wykład 7: Sprowadzanie do postaci normalnych. DDL, DML

Bazy danych. Plan wykładu. Dekompozycja relacji. Anomalie. Wykład 5: Projektowanie relacyjnych schematów baz danych. SQL - funkcje grupujce

Bazy danych. Plan wykáadu. Zale*noci funkcyjne. Wykáad 4: Relacyjny model danych - zale*noci funkcyjne. A B

Bazy danych. Plan wykładu. Podstawy modeli relacyjnych. Diagramy ER. Wykład 3: Relacyjny model danych. SQL

Technologie baz danych

Plan wykładu. Problemy w bazie danych. Problemy w bazie danych BAZY DANYCH. Problemy w bazie danych Przykład sprowadzenia nieznormalizowanej SQL

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

Plan wykładu. Problemy w bazie danych. Problemy w bazie danych BAZY DANYCH

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

Bazy danych. Plan wykładu. Definicja zalenoci funkcyjnych. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne.

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

BAZY DANYCH. Anomalie. Rozkład relacji i normalizacja. Wady redundancji

Bazy danych Podstawy teoretyczne

Konstruowanie Baz Danych Wprowadzenie do projektowania. Normalizacja

Bazy danych. Plan wykładu. Operacje w algebrze relacji. Pojcie algebry relacji. Wykład 8: Algebra relacji. SQL - cd

Bazy danych i usługi sieciowe

Podzapytania. SELECT atrybut_1, atrybut_2,... FROM relacja WHERE atrybut_n operator (SELECT atrybut_1, FROM relacja WHERE warunek

Bazy Danych i Usługi Sieciowe

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Pożyczkobiorcy. Anomalia modyfikacji: Anomalia usuwania: Konta_pożyczkowe. Anomalia wstawiania: Przykłady anomalii. Pożyczki.

Pojęcie zależności funkcyjnej

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

WYKŁAD 1. Wprowadzenie do problematyki baz danych

Normalizacja. Pojęcie klucza. Cel normalizacji

3. Podzapytania, łączenie tabel i zapytań

PLAN WYKŁADU BAZY DANYCH ZALEŻNOŚCI FUNKCYJNE

Zależności funkcyjne

Plan wykładu. Elementy ERD BAZY DANYCH. Proces modelowania i implementacji bazy danych. Diagramy związków encji. SQL podzapytania

Systemy baz danych. Notatki z wykładu

Bazy Danych i Usługi Sieciowe

Normalizacja relacyjnych baz danych. Sebastian Ernst

Bazy danych. Plan wykładu. Metody organizacji pliku rekordów. Pojcie indeksu. Wykład 11: Indeksy. Pojcie indeksu - rodzaje indeksów

Technologie baz danych

PODZAPYTANIE (SUBSELECT)

Jak wiernie odzwierciedlić świat i zachować występujące w nim zależności? Jak implementacja fizyczna zmienia model logiczny?

Zależności funkcyjne pierwotne i wtórne

Wprowadzenie do języka SQL

Cel normalizacji. Tadeusz Pankowski

Bazy danych 2. Zależności funkcyjne Normalizacja baz danych

Język SQL. Rozdział 6. Podzapytania Podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, operatory ANY, ALL i EXISTS.

Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych. Andrzej Bąk

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Bazy danych. Plan wykładu. Przetwarzanie zapyta. Etapy przetwarzania zapytania. Wykład 12: Optymalizacja zapyta. Etapy przetwarzanie zapytania

Normalizacja baz danych

KaŜdemu atrybutowi A przyporządkowana jest dziedzina Dom(A), czyli zbiór dopuszczalnych wartości.

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Bazy danych Teoria projektowania relacyjnych baz danych. Wykła. Wykład dla studentów matematyki

Technologie baz danych

Postać normalna Boyce-Codd (BCNF)

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Pierwsza postać normalna

Normalizacja schematów logicznych relacji

Bazy danych 3. Normalizacja baz danych

Bazy danych. Plan wykáadu. Proces modelowania i implementacji bazy danych. Elementy ERD

Plan wykładu. Reguły asocjacyjne. Przykłady asocjacji. Reguły asocjacyjne. Jeli warunki to efekty. warunki efekty

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Bazy danych. Andrzej Łachwa, UJ, /15

Bazy danych 3. Normalizacja baz danych (c.d.)

Podstawy języka SQL cz. 2

Bazy danych. Plan wykładu. Klucz wyszukiwania. Pojcie indeksu. Wykład 8: Indeksy. Pojcie indeksu - rodzaje indeksów

BAZY DANYCH model relacyjny. Opracował: dr inż. Piotr Suchomski

PROWIZJE Menad er Schematy rozliczeniowe

Bazy danych SQL. Wstp. SQL (Structured( Query Language) strukturalny jzyk zapyta

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

Bazy danych. Andrzej Łachwa, UJ, /15

S y s t e m y. B a z D a n y c h

Język SQL. Rozdział 5. Połączenia i operatory zbiorowe

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

Bazy danych 1. Wykład 6 Metodologia projektowania baz danych. (projektowanie logiczne - Normalizacja)

Relacyjny model baz danych, model związków encji, normalizacje

Baza danych - Access. 2 Budowa bazy danych

Materiały szkoleniowe. Podstawy jzyka SQL. Prowadzcy Anna Pijanowska - Kunierz Paweł ołnierczyk

1 Przygotował: mgr inż. Maciej Lasota

Pierwsza postać normalna

Planowanie adresacji IP dla przedsibiorstwa.

Projektowanie relacyjnych baz danych

SQL (ang. Structured Query Language)

RBD Relacyjne Bazy Danych

Podzapytania do tabel W miejscu w którym możemy użyć nazwy tabeli, możemy użyć podzapytania

Podstawowe zapytania SELECT (na jednej tabeli)

Laboratorium Bazy danych SQL 2

Tworzenie bazy danych Biblioteka tworzenie tabel i powiza, manipulowanie danymi. Zadania do wykonani przed przystpieniem do pracy:

Model relacyjny. Wykład II

Tadeusz Pankowski Definicja. Definicja

Wstęp Wprowadzenie do BD Podstawy SQL. Bazy Danych i Systemy informacyjne Wykład 1. Piotr Syga

Język SQL. Rozdział 2. Proste zapytania

Wymagania: Konstrukcja prostych zapytań w języku SQL, umiejętność wykorzystania funkcji wierszowych i agregujących.

Temat: Geometria obliczeniowa cz II. Para najmniej odległych punktów. Sprawdzenie, czy istnieje para przecinajcych si odcinków.

Wykład 8. SQL praca z tabelami 5

Wykład 2. Relacyjny model danych

Grupowanie i funkcje agregujące

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Bazy danych Transakcje

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

Przestrzenne bazy danych Podstawy języka SQL

Transkrypt:

Plan wykładu azy danych Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Dokoczenie SQL Zalenoci wielowartociowe zwarta posta normalna Dekompozycja do 4NF Przykład sprowadzanie do postaci normalnej Małgorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl azy danych (studia zaoczne) 2 Podzapytania - wskazówki Wewntrzne zapytanie musi by ujte w nawiasy i musi wystpowa po prawej stronie warunku W podzapytaniu nie wolno stosowa klauzuli ORDER Y. Obowizuje zasada jednej klauzuli ORDER Y dla całego polecenia SELET. Jeli jest potrzebna umieszczamy j jako ostatni Kolumny wystepujce na licie wyboru wewntrznego zapytania musz wystpowa w klejnoci zgodnej z kolejnoci kolumn ujtych w nawiasy warunku zapytania głównego. Musi równie wystpowa zgodno co do liczby i typu kolumn wybieranych w bloku wewntrznym i kolumn bloku zewntrznego porównywanych z nimi. Podzapytania po FROM Podzapytania mog wystpowa po WHERE, HVING i FROM: FROM tabela1, (podzapytanie1) alias1, (podzapytanie2) alias2... azy danych (studia zaoczne) 3 azy danych (studia zaoczne) 4

Operator EXISTS Powtórzenie NF i 3NF W przypadku zapyta skorelowanych czasami nie interesuje nas wynik zapytania, ale jedynie czy wiersz o zadanych przez nas warunkach istnieje. Wówczas wykorzystujemy operator EXISTS. Relacja R jest w postaci normalnej NF wtedy i tylko wtedy, gdy dla kadej nietrywialnej zalenoci 1, 2,..., n, zbiór { 1, 2,..., n } jest nadkluczem R EXISTS (podzapytanie) - zwraca true jeeli podzapytanie zwróci przynajmniej jeden wiersz NOT EXISTS(podzapytanie) zwraca true jeeli podzapytanie nie zwróci adnego wiersza Mówimy, e relacja jest w trzeciej postaci normalnej (3NF) wtedy i tylko wtedy, gdy jest spełniony nastpujcy warunek: jeli 1, 2,..., n jest zalenoci nietrywaln, to albo { 1, 2,..., n } jest nadkluczem albo jest elementem pewnego klucza. azy danych (studia zaoczne) 5 azy danych (studia zaoczne) 6 Nowa forma redundancji Moe si okaza, e schemat relacji ma posta NF, ale wystpuje w nim redundancja Najpowszechniejszym ródłem redundancji s tzw zalenoci wielowartociowe (ZW), które wyraaj zaleno pomidzy krotkami istniejcej relacji, która to relacja stara si reprezentowa wicej ni jeden zwizek wiele do wielu. W takich sytuacjach niektóre atrybuty s od siebie niezalene i ich wartoci musz powtórzy si w relacji we wszystkich moliwych kombinacjach. Zalenoci wielowartociowe definicja Zaleno wielowartociowa 1 2... n ->-> 1 2... m zachodzi w relacji R wówczas, gdy wybierajc z relacji R te krotki, które s zgodne dla atrybutów typu, zbiór wartoci atrybutów typu nie zaley od adnych wartoci tych atrybutów z R, których nie ma ani w zbiorze, ani w. Dla kadej pary krotek t i u z relacji R, które maj takie same wartoci atrybutów typu, mona znale w R tak krotk v, której składowe maj wartoci równe: wartociom atrybutów typu w krotkach t i u wartociom atrybutów typu krotki t wartociom tych składowych krotki u, które nie s ani typu, ani typu. azy danych (studia zaoczne) 7 azy danych (studia zaoczne) 8

Zalenoci wielowartociowe ->-> pozostałe t u v Wnioskowanie z zalenoci wielowartociowych Reguła zalenoci trywialnych jeli w pewnej relacji zachodzi zaleno 1 2... n ->-> 1 2... m to wówczas, gdy 1 2... k s wszystkimi atrybutami oraz cz z nich jest typu, zachodzi równie 1 2... n ->-> 1 2... k Reguła przechodnioci jeli zachodz zalenoci 1 2... n ->-> 1 2... m i 1 2... m ->-> 1 2... k to zachodzi równie zaleno 1 2... n ->-> 1 2... k Zalenoci wielowartociowe nie spełniaj reguły podziału i łczenia. azy danych (studia zaoczne) 9 azy danych (studia zaoczne) 10 Wnioskowanie z zalenoci wielowartociowych cd Kada zaleno funkcyjna jest zalenoci wielowartociow, czyli jeli 1 2... n -> 1 2... m to 1 2... n ->-> 1 2... m Reguła dopełnienia jeli 1 2... n ->-> 1 2... m zachodzi dla relacji R, to w R zachodzi równie 1 2... n ->-> 1 2... k, gdzie atrybuty typu s wszystkimi tymi atrybutami R, które nie s ani typu, ani typu. Przykład: Relacja ktorzy (nazwisko, ulica, miasto, tytuł, rok) Zalenoci wielofunkcyjne nazwisko->-> ulica miasto, z reguły dopełnienia mamy te zaleno nazwisko ->-> tytuł rok, która jest równie spełniona zwarta posta normalna Zaleno wielowartociow w relacji R: 1 2... n ->-> 1 2... m okrelamy jako nietrywialn, jeli: aden atrybut typu nie jest typu Kady atrybut R jest albo typu, albo typu. Relacja R jest w czwartej postaci normalnej (4NF), wtedy i tylko wtedy, gdy: 1 2... n ->-> 1 2... m jest nietrywialn zalenoci wielowartociow; { 1 2... n } jest nadkluczem w R. azy danych (studia zaoczne) 11 azy danych (studia zaoczne) 12

Dekompozycja do czwartej postaci normalnej Znajdujemy zaleno, która nie spełnia 4NF np. 1 2... n ->-> 1 2... m, gdzie { 1 2... n } nie jest nadkluczem (moe by to zaleno np. wyprowadzona z pewnej zalenoci funkcyjnej). Wówczas schemat relacji R dzielimy na dwa schematy: pierwszy schemat zawiera wszystkie atrybuty typu i typu. Drugi schemat zawiera wszystkie atrybuty typu oraz te wszystkie atrybuty z R, które nie s atrybutami ani typu, ani typu Pierwsza posta normalna Relacja jest w pierwszej postaci normalnej, jeli kada warto atrybutu w kadej krotce tej relacji jest wartoci atomow azy danych (studia zaoczne) 13 azy danych (studia zaoczne) 14 Druga posta normalna Pełna zaleno funkcyjna trybut relacji r jest w pełni funkcyjnie zalezny od zbioru atrybutów X, jeli jest funkcyjnie zaleny od niego, ale nie jest funkcyjnie zalezny od adnego podzbioru zbioru X. Trzecia posta normalna Dana relacja jest w trzeciej postaci normalnej, jeli jest ona w drugiej postaci normalnej i kady jej atrybut nie wchodzcy w skład adnego klucza nie jest przechodnio funkcyjnie zaleny od adnego klucza tej relacji. Dana relacja jest w drugiej postaci normalnej, jeli kady atrybut tej relacji nie wchodzcy w skład adnego klucza jest w pełni funkcyjnie zaleny od wszystkich kluczy tej relacji. W celu uzyskania drugiej postaci normalnej naley podzieli relacj na zbiór takich relacji, których wszystkie atrybuty bd w pełni funkcyjnie zalene od kluczy. Przechodnia zaleno funkcyjna Zalenoci funkcyjne dwóch relacji w 3NF azy danych (studia zaoczne) 15 azy danych (studia zaoczne) 16

Pierwsza posta normalna Druga posta normalna Posta nieznormalizowana; struktury danych nie s dwuwymiarowe do 1PN Relacja R D klucz D do 2PN D Usunicie danych nieelementarnych Usunicie niepełnej zalenoci funkcyjnej azy danych (studia zaoczne) 17 azy danych (studia zaoczne) 18 Trzecia posta normalna do 3PN Usunicie przechodniej zalenoci funkcyjnej azy danych (studia zaoczne) 19