Zależności funkcyjne c.d.

Wielkość: px
Rozpocząć pokaz od strony:

Download "Zależności funkcyjne c.d."

Transkrypt

1 Zależności funkcyjne c.d. Przykłady. Relacja Film (zapis w postaci tabeli): Tytuł Rok Długość typfilmu nazwastudia nazwiskogwiazdy Gwiezdne Kolor Fox Carrie Fisher Gwiezdne Kolor Fox Mark Hamill Gwiezdne Kolor Fox Harrison Ford Potęzne Kolor Disney Emilio Estevez Kaczory Świat Kolor Paramount Dana Carvey Świat Kolor Paramount Mike Meyers Zależności funkcyjne {tytuł, rok} {długość} {tytuł, rok} {typfilmu} {tytuł, rok} {nazwastudia} W książkach można spotkać uproszczony zapis zależności funkcyjnej: tytuł, rok długość lub tytuł rok długość Taka konwencja będzie czasem wykorzystywana. Kluczem kandydującym w tej realizacji relacji (ekstensji) jest {tytuł, rok, nazwiskogwiazdy}. Możemy założyć, że taki klucz kandydujący jest we wszystkich dopuszczalnych (legalnych) realizacjach (stanach) relacji. Przy takim założeniu dopuszczamy możliwość wyprodukowania w różnych latach dwóch filmów o takich samych tytułach i z udziałem tych samych gwiazd. Nie dopuszczamy możliwości wyprodukowania w tym samym roku dwóch różnych filmów o takich samych tytułach (i ew. z udziałem tej samej gwiazdy). W wielu przypadkach w relacji można wskazać więcej niż jeden klucz kandydujący. Jeden z kluczy kandydujących relacji jest wybierany jako klucz główny. Wybór klucza głównego w konkretnym systemie może mieć wpływ na sposób przechowywania danych na przykład tworzone są indeksy, dane mogą być układane w kolejności wynikającej z posortowania wartości klucza. Nadkluczem (superkluczem, zbiorem identyfikującym) nazywa się zbiór atrybutów, który zawiera klucz kandydujący.

2 Zależności funkcyjne trywialne Niech A = {A 1, A 2,..., A n }, B = {B 1, B 2,..., B m } Mówimy, że zależność A B jest a) trywialna, jeśli zbiór atrybutów B jest podzbiorem zbioru A, b) nietrywialna, jeśli co najmniej jeden atrybut ze zbioru B nie należy do zbioru A, c) całkowicie nietrywialna, jeśli przecięcie A i B jest zbiorem pustym. Uwagi. W wielu książkach zależność funkcyjna definiowana jest jako zależność pojedynczego atrybutu od zbioru atrybutów. Zapis {A 1, A 2,..., A n } {B 1, B 2,..., B m } (lub krótko A B) oznacza wówczas zbiór zależności funkcyjnych pojedynczych atrybutów B 1, B 2,..., B m od tego samego zbioru atrybutów {A 1, A 2,..., A n }. Nietrywialna zależność funkcyjna (traktowana jako zależność pojedynczego atrybutu od zbioru atrybutów) jest wówczas definiowana jako zależność, w której atrybut z prawej strony nie należy do zbioru atrybutów z lewej strony. Zbiór atrybutów z lewej strony zależności funkcyjnej bywa nazywany zbiorem lewostronnym. Uwagi dotyczące NULL Date krytykuje wprowadzenie pojęcia NULL i logiki trójwartościowej do teorii relacyjnych baz danych. Zamiast NULL proponuje wykorzystać wartość domyślną. Zadanie domowe: rozdziały 4, 5 i 20 z książki Date: Wprowadzenie do systemów baz danych. W poniższych rozważaniach zakłada się, że NULL nie jest stosowany.

3 Projektowanie relacyjnych schematów baz danych. Problemy, które mogą wystąpić, jeśli dane w pojedynczej relacji powtarzają się (występuje redundancja) 1) problem niespójności 2) anomalie modyfikacji, 3) anomalie dodawania, 4) anomalie usuwania. Przykład Nazwisko Imię PESEL Adres Nr Tytuł Cena Data Termin Data kasety wypożyczenia zwrotu zwrotu Kowalski Jan 123 Zielona 3 5 Pan Tadeusz 5zł Kowalski Jan 123 Zielona 3 17 Quo vadis 5zł Nowak Paweł 311 Zdrojowa 10 Szczęki 2 zł /3 Nowak Paweł 311 Zdrojowa 19 Bajki 1 zł /3 cz Kowalski Jan 123 Zielona 3 10 Szczęki 2 zł Kowalski Jan 123 Zielona 3 5 Pan Tadeusz 5 zł Nowak Paweł 311 Zdrojowa 127 Szczęki 2 zł /3 Dekompozycja relacji. Sposobem na eliminację powyższych problemów jest dekompozycja relacji, czyli podział relacji na mniejsze relacje. Sposób dekompozycji relacji na dwie relacje. Niech relacja R ma zbiór atrybutów (schemat) {A 1,..., A n }. Relację R dekomponujemy na relację S o schemacie {B 1,..., B m } oraz relację T o schemacie {C 1,..., C k } tak, by spełnione były następujące zasady: 1. {A 1,..., A n } = {B 1,..., B m } {C 1,..., C k }. 2. Krotki relacji S powstają przez rzutowanie wszystkich krotek relacji R na zbiór atrybutów {B 1,..., B m }. 3. Analogicznie krotki relacji T powstają przez rzutowanie wszystkich krotek relacji R na zbiór atrybutów {C 1,..., C k }. Analogicznie można określić dekompozycję relacji na więcej niż dwie relacje.

4 Można mówić o dekompozycji samych schematów. Dekompozycja schematu oznacza podział schematu na podzbiory. Przykład: Dekompozycja relacji Film: Tytuł Rok Długość typfilmu nazwastudia nazwiskogwiazdy Gwiezdne Kolor Fox Carrie Fisher Gwiezdne Kolor Fox Mark Hamill Gwiezdne Kolor Fox Harrison Ford Potęzne Kolor Disney Emilio Estevez Kaczory Świat Kolor Paramount Dana Carvey Świat Kolor Paramount Mike Meyers Po dekompozycji na relacje o schematach { tytuł, rok, długość, typfilmu, nazwastudia } oraz { tytuł, rok, nazwiskogwiazdy } otrzymujemy: Relacja Film1: tytuł Rok długość typfilmu nazwastudia Gwiezdne kolor Fox Potęzne kolor Disney Kaczory Świat kolor Paramount Relacja Film2: tytuł Rok nazwiskogwiazdy Gwiezdne 1977 Carrie Fisher Gwiezdne 1977 Mark Hamill Gwiezdne 1977 Harrison Ford Potęzne 1991 Emilio Estevez Kaczory Świat 1992 Dana Carvey Świat 1992 Mike Meyers

5 Dzięki zdekomponowaniu relacji Film na dwie relacje Film1 i Film2 usunięte zostało źródło anomalii (redundancja). Odzyskiwanie danych po dekompozycji Chcemy, by w wyniku dekompozycji była możliwość takiego połączenia krotek powstałych w wyniku rzutowania, aby uzyskany zbiór krotek zawierał wszystkie i tylko te krotki, które należały do relacji przed dekompozycją. Twierdzenie Heatha: Niech X, Y, Z będą niepustymi zbiorami atrybutów, niech schemat relacji R będzie sumą tych zbiorów. Jeśli w R jest spełniona zależność funkcyjna X Y, wówczas relacja jest równa złączeniu (naturalnemu) swoich rzutów na X Y oraz X Z (w niektórych książkach można w tym kontekście spotkać zapis {X,Y} w znaczeniu sumy zbiorów X i Y). I.J. Heath. Unacceptable File Operations in a Relational Database. Proc ACM SIGFIDET Workshop on Data Description, Access and Control, San Diego, California (November 1971). Przykład Relacja o schemacie {A,B,C} z kluczem kandydującym A oraz zależnościami funkcyjnymi A B i B C. A B C 1 a 10 2 b 12 3 a 10 4 c 15 Po dekompozycji otrzymujemy relacje: A B 1 a 2 b 3 a 4 c B C a 10 b 12 c 15 Jeśli dekompozycja nie wiąże się z wykorzystaniem zależności funkcyjnych, to może się zdarzyć, że przez złączenie naturalne nie odtworzymy relacji oryginalnej. Na przykład, gdyby w powyższym przypadku nie było zależności B C:

6 A B C 1 a 10 2 b 12 3 a 20 4 c 15 Po rzutowaniu mamy A B 1 a 2 b 3 a 4 c B C a 10 b 12 a 20 c 15 Przy próbie odtworzenia relacji oryginalnej mamy: A B C 1 a 10 1 a 20 2 b 12 3 a 10 3 a 20 4 c 15 Postać normalna Boyce a-codda PNBC, BCNF (Boyce-Codd Normal Form) Relacja jest w postaci normalnej Boyce a Codda wtedy i tylko wtedy, gdy dla każdej nietrywialnej zależności funkcyjnej {A 1,...,A n } B (B jest tu pojedynczym atrybutem) zbiór {A 1,..., A n } jest nadkluczem relacji. Przykład: Rozważana wcześniej relacja Film nie jest w postaci BCNF. Kluczem jest zbiór { tytuł, rok, nazwiskogwiazdy }. W relacji występuje zależność funkcyjna {tytuł, rok} {długość, typ filmu, nazwastudia} Lewa strona tej zależności nie jest nadkluczem.

7 Propozycja (podana jako twierdzenie w [Widom, Ullman ]), mająca uzasadnić poprawność algorytmu doprowadzania relacji do postaci BCNF: Każda relacja binarna (tzn. o dwóch atrybutach) jest w postaci BCNF. Próba uzasadnienia: Jeśli zachodzą tylko zależności {A,B} {A}, {A,B} {B} to ok. Jeśli zachodzi tylko zależność {A} {B}, to jedynym kluczem kandydującym jest {A}. Jeśli zachodzi tylko zależność {B} {A}, to jedynym kluczem kandydującym jest {B}. Jeśli zachodzą zależności {A} {B} i {B} {A} to kluczami kandydującymi są {A} i {B}. Powyższe uzasadnienie nie obejmuje jednak możliwego ( patologicznego ) przypadku, kiedy lewa strona zależności jest zbiorem pustym. Date podaje przykład binarnej relacji USA o dwóch atrybutach COUNTRY i STATE. We wszystkich krotkach atrybut COUNTRY przyjmuje wartość USA, zatem mamy zależność funkcyjną {} {COUNTRY}. Kluczem jest {STATE}, zatem relacja nie jest w PNBC. Zainteresowanych odsyłam do rozdziału 5 w [Date, Wprowadzenie do systemów baz danych, WNT ], w szczególności do rozwiązania zadania 5.7 (i zadania 4.5 z rozdziału 4). Dekompozycja do postaci BCNF Każdą relację można zdekomponować w sposób bezstratny na relacje w postaci BCNF, tzn. tak, że istnieje możliwość dokładnego odtworzenia (przez złączenie naturalne) pierwotnej relacji z relacji powstałych po dekompozycji. Strategia bezstratnej dekompozycji do BCNF: Szukamy wszystkich nietrywialnych, pełnych zależności funkcyjnych {A 1,...,A n } {B i }, (B i jest tu pojedynczym atrybutem), które naruszają warunek BCNF, tzn. {A 1,...,A n } nie jest nadkluczem. Załóżmy, że otrzymamy zależność (*) {A 1,...,A n } {B 1,...,B m }. Dzielimy schemat relacji na dwa nierozłączne podzbiory: jeden zawierający wszystkie atrybuty występujące w zależności (*) naruszającej BCNF, drugi zawierający atrybuty z lewej strony rozważanej zależności (*) oraz atrybuty nie występujące ani z lewej ani z prawej strony tej zależności. Strategię stosujemy do relacji powstałych w wyniku dekompozycji do chwili, gdy wszystkie powstałe relacje są w BCNF. Przykład. Dla rozważanej relacji Film mamy zależność funkcyjną: {tytuł, rok} {długość, typfilmu, nazwastudia} Dekomponujemy relację Film na: { tytuł, rok, długość, typfilmu, nazwastudia } oraz { tytuł, rok, nazwiskogwiazdy }

8 Normalizacja doprowadzenie relacji do postaci BCNF, przykłady Przykład 1 Rozważmy relację: tytuł Rok długość typ filmu nazwastudia adresstudia Gwiezdne kolor Fox Hollywood Potęzne kolor Disney Buena Vista Kaczory Świat kolor Paramount Hollywood Rodzina Adamsów kolor Paramount Hollywood Kluczem jest { tytuł, rok } Jednocześnie jest zależność funkcyjna: {nazwastudia} {adresstudia} Dekomponujemy schemat relacji na dwa zbiory: { nazwastudia, adresstudia } oraz { nazwastudia, tytuł, rok, długość, typfilmu } Przykład 2 Należy zaprojektować tabele do bazy danych, która służy do ewidencjonowania sprzedaży i wystawiania faktur. Punktem wyjściowym zadania może być faktura, zawierająca następujące pozycje: Nr_faktury (np. 123/12/09), Data_wystawienia, Data_sprzedaży, Nazwa_odbiorcy, Adres_odbiorcy, Wystawiający, Lista_towarów (Nazwa_towaru, Jednostka, Cena_netto, %VAT, Cena_brutto, Ilość, Wartość_zakupu), Wartość_łączna_zakupów. Można dodać inne pozycje. Dla uproszczenia możemy założyć, że cechy obiektów, o których przechowujemy informacje nie zmieniają się w czasie, a więc np. nazwy i adresy odbiorców są niezmienne, ceny netto towarów są niezmienne, nie zmienia się VAT na towar. Pola, których wartość można obliczyć na podstawie pewnego wzoru (wykorzystującego ew. wartości z innych pól w wierszu) nie powinny być przechowywane w tabeli. Uwaga: w praktyce, ze względów wydajnościowych czasem wykorzystuje się takie pola, można na nich nawet budować indeksy (indeksom poświęcony będzie osobny wykład). Na wykładzie przedstawione zostały kroki procedury normalizacji (doprowadzenia do BCNF). Przy pewnych założeniach odnośnie zależności funkcyjnych otrzymaliśmy cztery tabele (nazwy pól kluczy głównych są pogrubione): Faktury: {Nr_faktury, Data_wystawienia, Data sprzedaży, Wystawiający, Nazwa_odbiorcy}

9 Odbiorcy: {Nazwa_odbiorcy, Adres_odbiorcy} Towary: {Nazwa_towaru, Kategoria_towaru, Jednostka, Cena_netto} Kategorie: {Kategoria_towaru, %VAT} Szczegóły_faktur: {Nr_faktury, Nazwa_towaru, Ilość} Ze względów wydajnościowych można wprowadzić pola ID_odbiorcy, ID_towaru i ID_kategorii: Faktury: {Nr_faktury, Data_wystawienia, Data sprzedaży, Wystawiający, Id_odbiorcy} Odbiorcy: {Id_odbiorcy, Nazwa_odbiorcy, Adres_odbiorcy} Towary: {Id_towaru, Nazwa_towaru, Id_kategorii, Jednostka, Cena_netto} Kategorie: {Id_kategorii, Nazwa_kategorii, %VAT} Szczegóły_faktur: {Nr_faktury, Id_towaru, Ilość} Problem zmieniających się w czasie wartości atrybutów. Powyżej przyjęliśmy, że pewne wartości nie zmieniają się w czasie. Najpierw problem zmieniających się w czasie wartości prześledziliśmy na przykładzie zmieniających się cen. Rozwiązanie 1 Zamiast zależności funkcyjnej {Nazwa_towaru} {Cena_netto} można założyć zależność: {Nazwa_towaru, Data} {Cena_netto} i przeprowadzić normalizację zgodnie z podanym algorytmem. Inne zaprezentowane niżej rozwiązania polegają na zastosowaniu pewnych wzorców po normalizacji przeprowadzonej z założeniem niezmiennych w czasie cen. Rozwiązanie 2 Do tabeli Towary należałoby dodać pole Od_kiedy (od kiedy obowiązuje dana cena). Kluczem kandydującym nie będzie już {Nazwa_towaru}, tylko {Nazwa_towaru, Od_kiedy}. Wobec faktu, że jest zależność funkcyjna {Nazwa_towaru} {Kategoria_towaru, Jednostka} tabela Towary nie jest w postaci BCNF. Należy dokonać dekompozycji na dwie tabele jedna Towary z polami {Nazwa_towaru, Kategoria_towaru, Jednostka}, druga Ceny, z polami {Nazwa_towaru, Od_kiedy, Cena}. Z punktu widzenia wydajności (i z punktu widzenia wygody programistów baz danych) nie jest to najlepsze rozwiązanie. Zdania SQL, które wyświetlałyby wszystkie dane dotyczące faktur byłyby stosunkowo skomplikowane. Zadanie domowe: Proponuję napisać zdanie SQL, które wybierze wszystkie wiersze ze wszystkich tabel z rozwiązania 2 tak, by wyświetlić wszystkie dane szczegółowe faktur. Rozwiązanie 3 Rozwiązanie to jest nieznaczną modyfikacją rozwiązania 2. Do tabeli Ceny dodajemy pole Do_kiedy, zawierające informację do kiedy dana cena obowiązuje (przy założeniu, że ceny nie zmieniają się w środku dnia sprzedaży, w przeciwnym przypadku można wprowadzić datę z godziną). Dla ceny aktualnie obowiązującej to pole byłoby puste (lub zawierałoby pewną

10 wartość domyślną). Taka prosta modyfikacja znacznie upraszcza zdania SQL, odwołujące się do ceny sprzedaży towaru. Rozwiązanie 4 W rozwiązaniu tym nie będziemy modyfikować tabeli Towary (powstałej przy normalizacji zakładającej niezmienność cen), jednak założymy, że będziemy przechowywać informacje tylko o bieżącej cenie. To oczywiście nie wystarcza. Gdybyśmy na tym poprzestali, to w momencie zmiany ceny pewnego towaru informacja o sprzedaży tego towaru z poprzednich dni nie byłaby poprawna (szczegółowe zestawienie wszystkich danych z faktur zawierałoby niepoprawne kwoty). Należy dodać pole Cena_bieżąca to tabeli Szczegóły_faktur. Zaletą tego rozwiązania jest prostota w naszym przypadku tabela Towary nie musi być dzielona na kilka, zatem wszystkie zdania SQL odwołujące się do Ceny są stosunkowo proste. Wada: informacje o poprzednich cenach towarów są tylko w tabeli Szczegóły_faktur, zatem jeśli jakiś towar nie był w pewnym okresie sprzedawany, to nie mamy z tego okresu informacji o cenach. Czasem takie informacje mogą być z jakiegoś powodu potrzebne (np. do różnych analiz). Inne rozwiązania Różne połączenia poprzednich rozwiązań.

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Model relacyjny Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS w. III Jesień 2011 1 / 40 Iloczyn kartezjański Iloczyn kartezjański zbiorów A, B

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Model relacyjny Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk (Wydział Fizyki) BDiUS w. III Jesień 2016 1 / 50 Iloczyn kartezjański Iloczyn kartezjański zbiorów A, B

Bardziej szczegółowo

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

PLAN WYKŁADU BAZY DANYCH ZALEŻNOŚCI FUNKCYJNE PLAN WYKŁADU Zależności funkcyjne Anomalie danych Normalizacja Postacie normalne Zależności niefunkcyjne Zależności złączenia BAZY DANYCH Wykład 5 dr inż. Agnieszka Bołtuć ZALEŻNOŚCI FUNKCYJNE Niech R

Bardziej szczegółowo

Normalizacja. Pojęcie klucza. Cel normalizacji

Normalizacja. Pojęcie klucza. Cel normalizacji Plan Normalizacja Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski 1. Cel normalizacji. 2. Klucze schematów relacyjnych atrybuty kluczowe i niekluczowe. 3. 2PN druga postać normalna. 4. 3PN trzecia

Bardziej szczegółowo

Projektowanie relacyjnych baz danych

Projektowanie relacyjnych baz danych BAZY DANYCH wykład 7 Projektowanie relacyjnych baz danych Dr hab. Sławomir Zadrożny, prof. PR Zależności funkcyjne Niech X i Y oznaczają zbiory atrybutów relacji R Powiemy, że dla relacji R obowiązuje

Bardziej szczegółowo

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

Jak wiernie odzwierciedlić świat i zachować występujące w nim zależności? Jak implementacja fizyczna zmienia model logiczny? Plan wykładu Spis treści 1 Projektowanie baz danych 1 2 Zależności funkcyjne 1 3 Normalizacja 1NF, 2NF, 3NF, BCNF 4 4 Normalizacja 4NF, 5NF 6 5 Podsumowanie 9 6 Źródła 10 1 Projektowanie baz danych Projektowanie

Bardziej szczegółowo

Technologie baz danych

Technologie baz danych Plan wykładu Technologie baz danych Wykład 2: Relacyjny model danych - zależności funkcyjne. SQL - podstawy Definicja zależności funkcyjnych Reguły dotyczące zależności funkcyjnych Domknięcie zbioru atrybutów

Bardziej szczegółowo

Pojęcie zależności funkcyjnej

Pojęcie zależności funkcyjnej Postacie normalne Plan wykładu Zależności funkcyjne Cel normalizacji Pierwsza postać normalna Druga postać normalna Trzecia postać normalna Postać normalna Boyca - Codda Pojęcie zależności funkcyjnej Definicja

Bardziej szczegółowo

Cel normalizacji. Tadeusz Pankowski

Cel normalizacji. Tadeusz Pankowski Plan Normalizacja Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski 1. Cel normalizacji. 2. Klucze schematów relacyjnych atrybuty kluczowe i niekluczowe. 3. 2PN druga postać normalna. 4. 3PN trzecia

Bardziej szczegółowo

Systemy baz danych. Notatki z wykładu. http://robert.brainusers.net 17.06.2009

Systemy baz danych. Notatki z wykładu. http://robert.brainusers.net 17.06.2009 Systemy baz danych Notatki z wykładu http://robert.brainusers.net 17.06.2009 Notatki własne z wykładu. Są niekompletne, bez bibliografii oraz mogą zawierać błędy i usterki. Z tego powodu niniejszy dokument

Bardziej szczegółowo

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

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL. Plan wykładu Bazy danych Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL. Deficja zależności funkcyjnych Klucze relacji Reguły dotyczące zależności funkcyjnych Domknięcie zbioru atrybutów

Bardziej szczegółowo

Normalizacja relacyjnych baz danych. Sebastian Ernst

Normalizacja relacyjnych baz danych. Sebastian Ernst Normalizacja relacyjnych baz danych Sebastian Ernst Zależności funkcyjne Zależność funkcyjna pomiędzy zbiorami atrybutów X oraz Y oznacza, że każdemu zestawowi wartości atrybutów X odpowiada dokładnie

Bardziej szczegółowo

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

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d. TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Podsumowanie Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS w. XIII Jesień 2011 1 / 35 Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Algebra relacji i SQL Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. IV Jesień 2014 1 / 52 Do czego służy baza danych? nazwa adres Studia rok

Bardziej szczegółowo

Projektowanie Systemów Informacyjnych

Projektowanie Systemów Informacyjnych Projektowanie Systemów Informacyjnych Wykład II Encje, Związki, Diagramy związków encji, Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.Widom Copyrights by Arkadiusz Rzucidło

Bardziej szczegółowo

Bazy danych 3. Normalizacja baz danych

Bazy danych 3. Normalizacja baz danych Bazy danych 3. Normalizacja baz danych P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2011/12 Pierwsza postać normalna Tabela jest w pierwszej postaci normalnej (1PN), jeżeli 1. Tabela posiada klucz.

Bardziej szczegółowo

1 Wstęp 3 1.1 Motywacja... 3 1.2 Modele baz danych... 6

1 Wstęp 3 1.1 Motywacja... 3 1.2 Modele baz danych... 6 Spis treści I Bazy danych 2 1 Wstęp 3 1.1 Motywacja............................... 3 1.2 Modele baz danych.......................... 6 2 Modelowanie związków encji 7 2.1 Wstęp.................................

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

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

Pożyczkobiorcy. Anomalia modyfikacji: Anomalia usuwania: Konta_pożyczkowe. Anomalia wstawiania: Przykłady anomalii. Pożyczki. Normalizacja Niewłaściwe zaprojektowanie schematów relacji może być przyczyną dublowania się danych, ich niespójności i anomalii podczas ich aktualizowania Przykłady anomalii PROWNIY id_prac nazwisko adres

Bardziej szczegółowo

Baza danych zbiór danych

Baza danych zbiór danych Baza danych zbiór danych SZBD database management system System zarządzania bazą danych Modyfikacja Zapytania Aktualizacje schematu PROCESOR ZAPYTAŃ MODUŁ ZARZĄDZANIA TRANZAKCJAMI MODUŁ ZARZĄDZANIA PAMIĘCIĄ

Bardziej szczegółowo

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

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza BAZY DANYCH Microsoft Access NORMALIZACJA BAZ DANYCH Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii

Bardziej szczegółowo

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

Wykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J. Bazy Danych Wykład II Encja, atrybuty, klucze Związki encji Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.Widom Copyrights by Arkadiusz Rzucidło 1 Encja Byt pojęciowy

Bardziej szczegółowo

- Przedmiot kończy się egzaminem - Egzamin ma formę testu teoretycznego

- Przedmiot kończy się egzaminem - Egzamin ma formę testu teoretycznego Dr inż. Ludmiła Rekuć p. 58 B4 www.ioz.pwr.wroc.pl, ludmila.rekuc@pwr.wroc.pl Dr inż. Witold Rekuć p. 57 B4 www.ioz.pwr.wroc.pl, witold.rekuc@pwr.wroc.pl - Przedmiot kończy się egzaminem - Egzamin ma formę

Bardziej szczegółowo

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

Bazy danych 3. Normalizacja baz danych (c.d.) Bazy danych 3. Normalizacja baz danych (c.d.) P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012/13 Postać normalna Boyce a-codda Tabela jest w postaci normalnej Boyce a-codda (BCNF, PNBC), jeżeli 1.

Bardziej szczegółowo

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

KaŜdemu atrybutowi A przyporządkowana jest dziedzina Dom(A), czyli zbiór dopuszczalnych wartości. elacja chemat relacji chemat relacji jest to zbiór = {A 1,..., A n }, gdzie A 1,..., A n są artybutami (nazwami kolumn) np. Loty = {Numer, kąd, Dokąd, Odlot, Przylot} KaŜdemu atrybutowi A przyporządkowana

Bardziej szczegółowo

Zależności funkcyjne

Zależności funkcyjne Zależności funkcyjne Plan wykładu Pojęcie zależności funkcyjnej Dopełnienie zbioru zależności funkcyjnych Postać minimalna zbioru zależności funkcyjnych Domknięcie atrybutu relacji względem zależności

Bardziej szczegółowo

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

Instytut Mechaniki i Inżynierii Obliczeniowej  Wydział Mechaniczny technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 5 (Projektowanie i normalizacja bazy danych)

Bardziej szczegółowo

Normalizacja schematów logicznych relacji

Normalizacja schematów logicznych relacji Normalizacja schematów logicznych relacji Wykład przygotował: Tadeusz Morzy BD wykład 5 Celem niniejszego wykładu jest przedstawienie i omówienie procesu normalizacji. Proces normalizacji traktujemy jako

Bardziej szczegółowo

Postać normalna Boyce-Codd (BCNF)

Postać normalna Boyce-Codd (BCNF) Postać normalna Boyce-Codd (BCNF) Grunty Id_Własności Wojewódz. Id-gruntu Obszar Cena Stopa_podatku Postać normalna Boyce-Codd a stanowi warunek dostateczny 3NF, ale nie konieczny. GRUNTY Id_Własności

Bardziej szczegółowo

Baza danych. Baza danych to:

Baza danych. Baza danych to: Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego

Bardziej szczegółowo

1 Przygotował: mgr inż. Maciej Lasota

1 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 1 1 Bazy Danych Instrukcja laboratoryjna Temat: Normalizacje 1 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie. Normalizacja to proces organizacji danych w bazie danych. Polega on na

Bardziej szczegółowo

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

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty Informatyka Ćwiczenie 10 Bazy danych Baza danych jest zbiór informacji (zbiór danych). Strukturę bazy danych można określić w formie jak na rysunku 1. Pracownik(ID pracownika, imie, nazwisko, pensja) Klient(ID

Bardziej szczegółowo

Baza danych. Modele danych

Baza danych. Modele danych Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia III Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. III Jesień 2011 1 / 1 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

Bazy danych. Andrzej Łachwa, UJ, /15

Bazy danych. Andrzej Łachwa, UJ, /15 Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 10/15 Semantyka schematu relacyjnej bazy danych Schemat bazy danych składa się ze schematów relacji i więzów

Bardziej szczegółowo

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

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza BAZY DANYCH Microsoft Access NORMALIZACJA BAZ DANYCH Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii

Bardziej szczegółowo

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

BAZY DANYCH. Anomalie. Rozkład relacji i normalizacja. Wady redundancji BAZY DANYCH WYKŁAD 5 Normalizacja relacji. Zapytania zagnieżdżone cd. Wady redundancji Konieczność utrzymania spójności kopii, Marnowanie miejsca, Anomalie. (Wybrane materiały) Dr inż. E. Busłowska Copyright

Bardziej szczegółowo

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

Bazy danych 2. Zależności funkcyjne Normalizacja baz danych Bazy danych 2. Zależności funkcyjne Normalizacja baz danych P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012/13 Zależności funkcyjne Definicja: Mówimy, że atrybut B jest zależny funkcyjnie od atrybutów

Bardziej szczegółowo

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

Bazy danych Teoria projektowania relacyjnych baz danych. Wykła. Wykład dla studentów matematyki Bazy danych Teoria projektowania relacyjnych baz danych. Wykład dla studentów matematyki 2 kwietnia 2017 Ogólne wprowadzenie No przecież do tego służa reguły, rozumiesz? Żebyś się dobrze zastanowił, zanim

Bardziej szczegółowo

1 Wstęp do modelu relacyjnego

1 Wstęp do modelu relacyjnego Plan wykładu Model relacyjny Obiekty relacyjne Integralność danych relacyjnych Algebra relacyjna 1 Wstęp do modelu relacyjnego Od tego się zaczęło... E. F. Codd, A Relational Model of Data for Large Shared

Bardziej szczegółowo

Relacyjne Bazy Danych Andrzej M. Borzyszkowski. Projekt bazy danych normalizacja. PJATK/ Gdańsk. Dwie metodologie. Formalne zasady projektowe

Relacyjne Bazy Danych Andrzej M. Borzyszkowski. Projekt bazy danych normalizacja. PJATK/ Gdańsk. Dwie metodologie. Formalne zasady projektowe Relacyjne Bazy Danych Andrzej M. Borzyszkowski PJATK/ Gdańsk materiały dostępne elektronicznie http://szuflandia.pjwstk.edu.pl/~amb Projekt bazy danych normalizacja 2 Dwie metodologie Formalne zasady projektowe

Bardziej szczegółowo

WYKŁAD 1. Wprowadzenie do problematyki baz danych

WYKŁAD 1. Wprowadzenie do problematyki baz danych WYKŁAD 1 Wprowadzenie do problematyki baz danych WYKŁAD 2 Relacyjny i obiektowy model danych JĘZYK UML (UNIFIED MODELING LANGUAGE) Zunifikowany język modelowania SAMOCHÓD

Bardziej szczegółowo

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

BAZY DANYCH model relacyjny. Opracował: dr inż. Piotr Suchomski BAZY DANYCH model relacyjny Opracował: dr inż. Piotr Suchomski Relacyjny model danych Relacyjny model danych posiada trzy podstawowe składowe: relacyjne struktury danych operatory algebry relacyjnej, które

Bardziej szczegółowo

Normalizacja baz danych

Normalizacja baz danych Wrocławska Wyższa Szkoła Informatyki Stosowanej Normalizacja baz danych Dr hab. inż. Krzysztof Pieczarka Email: krzysztof.pieczarka@gmail.com Normalizacja relacji ma na celu takie jej przekształcenie,

Bardziej szczegółowo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Projektowanie relacyjnych baz danych

Projektowanie relacyjnych baz danych Mam nadzieję, że do tej pory przyzwyczaiłeś się do tabelarycznego układu danych i poznałeś sposoby odczytywania i modyfikowania tak zapisanych danych. W tym odcinku poznasz nieco teorii relacyjnych baz

Bardziej szczegółowo

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

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski Bazy danych Andrzej Grzybowski Instytut Fizyki, Uniwersytet Śląski Wykład 2 Podstawy integralności w relacyjnym modelu baz danych Bazy danych. Wykład 2 2 Integralność relacyjnych baz danych Schemat relacji

Bardziej szczegółowo

Pierwsza postać normalna

Pierwsza postać normalna Normalizacja Pierwsza postać normalna Jedynymi relacjami dozwolonymi w modelu relacyjnym są relacje spełniające następujący warunek: każda wartość w relacji, tj. każda wartość atrybutu w każdej krotce,

Bardziej szczegółowo

Relacyjny model danych

Relacyjny model danych Model relacyjny Relacyjny model danych Relacyjny model danych jest obecnie najbardziej popularnym modelem używanym w systemach baz danych. Podstawą tego modelu stała się praca opublikowana przez E.F. Codda

Bardziej szczegółowo

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

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski azy danych Andrzej Grzybowski Instytut Fizyki, Uniwersytet Śląski Wykład 5 Normalizacja relacji bazy danych jako podstawa relacyjnego modelowania danych (wykład przygotowany z wykorzystaniem materiałów

Bardziej szczegółowo

Pierwsza postać normalna

Pierwsza postać normalna Normalizacja Pierwsza postać normalna Jedynymi relacjami dozwolonymi w modelu relacyjnym są relacje spełniające następujący warunek: każda wartość w relacji, tj. każda wartość atrybutu w każdej krotce,

Bardziej szczegółowo

Model relacyjny. Wykład II

Model relacyjny. Wykład II Model relacyjny został zaproponowany do strukturyzacji danych przez brytyjskiego matematyka Edgarda Franka Codda w 1970 r. Baza danych według definicji Codda to zbiór zmieniających się w czasie relacji

Bardziej szczegółowo

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

Relacyjny model baz danych, model związków encji, normalizacje Relacyjny model baz danych, model związków encji, normalizacje Wyklad 3 mgr inż. Maciej Lasota mgr inż. Karol Wieczorek Politechnika Świętokrzyska Katedra Informatyki Kielce, 2009 Definicje Operacje na

Bardziej szczegółowo

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

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła 030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,

Bardziej szczegółowo

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski. Definicja. Definicja

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski. Definicja. Definicja Plan Zależności funkcyjne 1. Zależności funkcyjne jako klasa ograniczeń semantycznych odwzorowywanego świata rzeczywistego. 2. Schematy relacyjne = typ relacji + zależności funkcyjne. 3. Rozkładalność

Bardziej szczegółowo

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

Systemy baz danych. mgr inż. Sylwia Glińska Systemy baz danych Wykład 1 mgr inż. Sylwia Glińska Baza danych Baza danych to uporządkowany zbiór danych z określonej dziedziny tematycznej, zorganizowany w sposób ułatwiający do nich dostęp. System zarządzania

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH 1 Technologie informacyjne WYKŁAD IV WPROWADZENIE DO BAZ DANYCH MAIL: WWW: a.dudek@pwr.edu.pl http://wgrit.ae.jgora.pl/ad Bazy danych 2 Baza danych to zbiór danych o określonej strukturze. zapisany na

Bardziej szczegółowo

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

2010-10-21 PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA PLAN WYKŁADU Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna BAZY DANYCH Wykład 2 dr inż. Agnieszka Bołtuć MODEL DANYCH Model danych jest zbiorem ogólnych zasad posługiwania

Bardziej szczegółowo

Zależności funkcyjne pierwotne i wtórne

Zależności funkcyjne pierwotne i wtórne Zależności funkcyjne pierwotne i wtórne W praktyce, w przypadku konkretnej bazy danych, nie jest zwykle możliwe (ani potrzebne), by projektant określił wszystkie zależności funkcyjne na etapie analizy

Bardziej szczegółowo

Algebra relacji. nazywamy każdy podzbiór iloczynu karteziańskiego D 1 D 2 D n.

Algebra relacji. nazywamy każdy podzbiór iloczynu karteziańskiego D 1 D 2 D n. Algebra relacji Definicja 1 (Relacja matematyczna). Relacją R między elementami zbioru D 1 D 2 D n, gdzie przypomnijmy D 1 D 2 D n = {(d 1, d 2,..., d n ) : d i D i, i = 1, 2,..., n}, nazywamy każdy podzbiór

Bardziej szczegółowo

Bazy danych. Algebra relacji

Bazy danych. Algebra relacji azy danych lgebra relacji Model danych Model danych to spójny zestaw pojęć służący do opisywania danych i związków między nimi oraz do manipulowania danymi i ich związkami, a także do wyrażania więzów

Bardziej szczegółowo

Związki pomiędzy tabelami

Związki pomiędzy tabelami Związki pomiędzy tabelami bazy danych. Stosowanie relacji jako nazwy połączenia miedzy tabelami jest tylko grą słów, którą można znaleźć w wielu podręcznikach ( fachowo powinno się używać związku). Związki

Bardziej szczegółowo

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Program wykładu. zastosowanie w aplikacjach i PL/SQL; Program wykładu 1 Model relacyjny (10 godz.): podstawowe pojęcia, języki zapytań (algebra relacji, relacyjny rachunek krotek, relacyjny rachunek dziedzin), zależności funkcyjne i postaci normalne (BCNF,

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z

Bardziej szczegółowo

Model relacyjny bazy danych

Model relacyjny bazy danych Bazy Danych Model relacyjny bazy danych Przygotował: mgr inż. Maciej Lasota Bazy Danych 1 1) Model relacyjny bazy danych Relacyjny model bazy danych pojawił się po raz pierwszy w artykule naukowym Edgara

Bardziej szczegółowo

Bazy danych 3. Zależności funkcyjne Normalizacja relacyjnych baz danych

Bazy danych 3. Zależności funkcyjne Normalizacja relacyjnych baz danych Bazy danych 3. Zależności funkcyjne Normalizacja relacyjnych baz danych P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2017/18 Zależności funkcyjne (ang. functional dependencies) to jedno z najważniejszych

Bardziej szczegółowo

Projektowanie baz danych

Projektowanie baz danych Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr zimowy 2005/06 Plan wykładu Ewolucja

Bardziej szczegółowo

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt. Zasady przygotowania i oceny projektów

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt. Zasady przygotowania i oceny projektów Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt Zasady przygotowania i oceny projektów 1 Cel projektu Celem niniejszego projektu jest zaprojektowanie i implementacja

Bardziej szczegółowo

koledzy, Jan, Nowak, ul. Niecała 8/23, , Wrocław, , ,

koledzy, Jan, Nowak, ul. Niecała 8/23, , Wrocław, , , Celem ćwiczeń jest zaprojektowanie oraz utworzenie na serwerze bazy danych przechowującej informacje na temat danych kontaktowych. Celem jest również zapoznanie z podstawowymi zapytaniami języka SQL służącymi

Bardziej szczegółowo

SQL (ang. Structured Query Language)

SQL (ang. Structured Query Language) SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze

Bardziej szczegółowo

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

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska Podczas używania bazy danych mogą pojawić się tzw. anomalie sytuacje, w których może dojść do utracenia danych. Anomalie, mogące wystąpić w niedostatecznie znormalizowanych tabelach,

Bardziej szczegółowo

Wykład 2. Relacyjny model danych

Wykład 2. Relacyjny model danych Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających

Bardziej szczegółowo

Normalizacja baz danych

Normalizacja baz danych Normalizacja baz danych Definicja 1 1 Normalizacja to proces organizowania danych w bazie danych. Obejmuje to tworzenie tabel i ustanawianie relacji między tymi tabelami zgodnie z regułami zaprojektowanymi

Bardziej szczegółowo

Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy.

Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy. Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy. Przejście od modelu związków encji do modelu relacyjnego: odwzorowanie zbiorów encji, odwzorowanie związków encji

Bardziej szczegółowo

Relacyjne bazy danych. Normalizacja i problem nadmierności danych.

Relacyjne bazy danych. Normalizacja i problem nadmierności danych. Relacyjne bazy danych. Normalizacja i problem nadmierności danych. Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Relacyjne bazy danych Stworzone

Bardziej szczegółowo

PLAN WYKŁADU BAZY DANYCH GŁÓWNE ETAPY PROJEKTOWANIA BAZY MODELOWANIE LOGICZNE

PLAN WYKŁADU BAZY DANYCH GŁÓWNE ETAPY PROJEKTOWANIA BAZY MODELOWANIE LOGICZNE PLAN WYKŁADU Modelowanie logiczne Transformacja ERD w model relacyjny Odwzorowanie encji Odwzorowanie związków Odwzorowanie specjalizacji i generalizacji BAZY DANYCH Wykład 7 dr inż. Agnieszka Bołtuć GŁÓWNE

Bardziej szczegółowo

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

S y s t e m y. B a z D a n y c h S y s t e m y B a z D a n y c h Wykład na przedmiot: Bazy danych Studia zaoczne i podyplomowe UAM Anna Pankowska aniap@amu.edu.pl W y k ł a d I Temat: Relacyjne bazy danych Plan wykładu: - cel stosowania

Bardziej szczegółowo

Księgarnia PWN: Michael J. Hernandez Bazy danych dla zwykłych śmiertelników

Księgarnia PWN: Michael J. Hernandez Bazy danych dla zwykłych śmiertelników Księgarnia PWN: Michael J. Hernandez Bazy danych dla zwykłych śmiertelników Słowo wstępne (13) Przedmowa i podziękowania (drugie wydanie) (15) Podziękowania (15) Przedmowa i podziękowania (pierwsze wydanie)

Bardziej szczegółowo

Literatura. Bazy danych s.1-1

Literatura. Bazy danych s.1-1 Literatura R.Colette, Bazy danych : od koncepcji do realizacji, PWE 1988, S.Forte, T.Howe, J. Ralston, Access2000, HELION 2001, R.J.Muller, Bazy danych, język UML w modelowaniu danych, MIKOM 2000, M.Muraszkiewicz,

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Dr inż. Szczepan Paszkiel szczepanpaszkiel@o2.pl Katedra Inżynierii Biomedycznej Politechnika Opolska Wprowadzenie DBMS Database Managment System, System za pomocą którego można

Bardziej szczegółowo

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Krzysztof Kadowski. PL-E3579, PL-EA0312, Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

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

Uzupełnij pola tabeli zgodnie z przykładem poniżej, 1. Wykonaj bazę danych biblioteki szkolnej, Otwórz MS Access a następnie z menu plik wybierz przycisk nowy, w oknie nowy plik wybieramy pusta baza danych nadaj jej nazwę Biblioteka i wybierz miejsce w

Bardziej szczegółowo

Normalizacja tabel POSTACIE NORMALNE TABEL

Normalizacja tabel POSTACIE NORMALNE TABEL Normalizacja tabel POSTACIE NORMALNE TABEL Projektowanie bazy danych- podstawowe reguły 1. Do opisu encji stosuje się oddzielną tabelę. Każdej encji odpowiada 1 tabela. Atrybutowi odpowiada kolumna. Dla

Bardziej szczegółowo

Technologia Informacyjna

Technologia Informacyjna Technologia Informacyjna zajęcia nr 9 Bazy danych cz.1 Elektrotechnika oraz Elektronika i Telekomunikacja semestr I, rok akademicki 2007/2008 mgr inż.. Paweł Myszkowski Plan dzisiejszych zajęć 1. Podstawowe

Bardziej szczegółowo

Bazy danych Projektowanie i implementacja relacyjnych baz danych

Bazy danych Projektowanie i implementacja relacyjnych baz danych Bazy danych Projektowanie i implementacja relacyjnych baz danych Marcin Szpyrka Katedra Informatyki Stosowanej AGH w Krakowie 2016/17 Literatura 1. Jeffrey D. Ullman, Jennifer Widom: Podstawowy kurs systemów

Bardziej szczegółowo

BAZA DANYCH. Informatyka. ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH Prowadzący: inż. Marek Genge

BAZA DANYCH. Informatyka. ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH Prowadzący: inż. Marek Genge BAZA DANYCH Informatyka ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH Prowadzący: inż. Marek Genge Treść zadania: Dyrektor szkoły dysponuje plikami Uczniowie, Klasy i Przedmioty. Oto opisy wierszy w poszczególnych plikach:

Bardziej szczegółowo

Bazy danych. Andrzej Łachwa, UJ, /15

Bazy danych. Andrzej Łachwa, UJ, /15 Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 11/15 NORMALIZACJA c.d. Przykład {UCZEŃ*, JĘZYK*, NAUCZYCIEL} {UCZEŃ, JĘZYK} NAUCZYCIEL NAUCZYCIEL JĘZYK Są

Bardziej szczegółowo

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

Plan wykładu. Problemy w bazie danych. Problemy w bazie danych BAZY DANYCH. Problemy w bazie danych Przykład sprowadzenia nieznormalizowanej SQL Plan wykładu 2 ZY DNYH Wykład 2: Sprowadzanie do postaci normalnych. SQL. Problemy w bazie danych Przykład sprowadzenia nieznormalizowanej relacji do 3NF SQL Małgorzata Krętowska Wydział Informatyki Politechnika

Bardziej szczegółowo

Przykłady normalizacji

Przykłady normalizacji Przykłady normalizacji Nr faktury Za okres Nabywca Usługa Strefa czasowa od 21113332437 1.11.2007 30.11.2007 Andrzej Macioł, Kraków ul. Armii Krajowej 7 21113332437 1.11.2007 30.11.2007 Andrzej Macioł,

Bardziej szczegółowo

Normalizacja relacji

Normalizacja relacji Wydział Zarządzania AGH Katedra Informatyki Stosowanej Normalizacja relacji Informatyczne systemy zarządzania Program wykładu Normalizacja Pierwsza postać normalna Druga postać normalna Klucze Przykłady

Bardziej szczegółowo

Bazy danych 1. Wykład 5 Metodologia projektowania baz danych. (projektowanie logiczne)

Bazy danych 1. Wykład 5 Metodologia projektowania baz danych. (projektowanie logiczne) Bazy danych 1 Wykład 5 Metodologia projektowania baz danych (projektowanie logiczne) Projektowanie logiczne przegląd krok po kroku 1. Usuń własności niekompatybilne z modelem relacyjnym 2. Wyznacz relacje

Bardziej szczegółowo

Bazy danych 2. Algebra relacji Zależności funkcyjne

Bazy danych 2. Algebra relacji Zależności funkcyjne Bazy danych 2. Algebra relacji Zależności funkcyjne P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2011/12 Relacyjne systemy baz danych... zdominowały rynek. Systemy nierelacyjne maja status eksperymentalny

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność

Bardziej szczegółowo

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

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 I. Tworzenie bazy danych za pomocą kreatora Celem ćwiczenia jest utworzenie przykładowej bazy danych firmy TEST, zawierającej informacje o pracownikach

Bardziej szczegółowo

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

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. 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

Bardziej szczegółowo

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

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych Plan wykładu Bazy danych Wykład 9: Przechodzenie od diagramów E/R do modelu relacyjnego. Definiowanie perspektyw. Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - perspektywy

Bardziej szczegółowo

Dekompozycja w systemach wyszukiwania informacji

Dekompozycja w systemach wyszukiwania informacji METODY DEKOMPOZYCJI: Dekompozycja w systemach wyszukiwania informacji ATRYBUTOWA OBIEKTOWA HIERARCHICZNA (zależna i wymuszona) Dekompozycje mają cel wtedy kiedy zachodzi któryś z poniższych warunków: Duża

Bardziej szczegółowo