Bazy danych. Algebra relacji

Podobne dokumenty
1 Wstęp do modelu relacyjnego

Model relacyjny. Wykład II

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

Bazy danych 1. Podstawowe pojęcia

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe

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

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

Model relacyjny. Wykład II

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

Bazy Danych. Model Relacyjny. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

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

Wykład 2. Relacyjny model danych

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

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Projektowanie relacyjnych baz danych

Relacyjny model danych

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

BAZY DANYCH algebra relacyjna. Opracował: dr inż. Piotr Suchomski

Bazy danych wykład drugi. Konrad Zdanowski

BAZY DANYCH Podstawowe pojęcia

Agnieszka Ptaszek Michał Chojecki

Bazy danych Algebra relacji Wykład dla studentów matematyki

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

Transformacja modelu ER do modelu relacyjnego

Model relacyjny bazy danych

Relacyjny model danych

Cel normalizacji. Tadeusz Pankowski

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

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

Normalizacja. Pojęcie klucza. Cel normalizacji

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

Bazy danych. Dr inż. Paweł Kasprowski

Baza danych. Modele danych

Relacyjny model danych. Relacyjny model danych

RBD Relacyjne Bazy Danych

Technologia informacyjna

Systemy baz danych. Notatki z wykładu

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

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

Autor: Joanna Karwowska

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

Bazy danych. Andrzej Łachwa, UJ, /15

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

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

Bazy danych. Andrzej Łachwa, UJ, /14

Bazy danych wykład trzeci. trzeci Modelowanie schematu bazy danych 1 / 40

Wprowadzenie do baz danych

Pojęcie zależności funkcyjnej

Plan wykładu: Operacje relacji: suma, przekrój, różnica, złączenia proste, iloczyn kartezjański, złączenia teta.

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

1. Zakłada się, że każda operacja (read, write) w harmonogramie obejmuje również blokowanie i odblokowanie jednostki. Czy następujący harmonogram

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Bazy danych. Wykład III Tabele. Copyrights by Arkadiusz Rzucidło 1

Bazy danych TERMINOLOGIA

Bazy danych Wykład zerowy. P. F. Góra

Tadeusz Pankowski Relacyjne bazy danych. są podstawą zachodniej cywilizacji

Transformacja modelu ER do modelu relacyjnego

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

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

1 Przygotował: mgr inż. Maciej Lasota

RBD Relacyjne Bazy Danych Więzy realcji

WYKŁAD 1. Wprowadzenie do problematyki baz danych

FUNKCJE SZBD. ZSE - Systemy baz danych 1

Bazy danych - wykład wstępny

TRANSFORMACJA MODELU ER DO MODELU RELACYJNEGO

SZKOLENIE: Administrator baz danych. Cel szkolenia

Relacyjne bazy danych

WPROWADZENIE DO BAZ DANYCH

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

Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/

Baza danych. Baza danych to:

Bazy danych wykład trzeci. trzeci Przekształcenie modelu ER na model relacyjny 1 / 19

Teoretyczne podstawy informatyki

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

Technologie baz danych

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

Teoretyczne podstawy informatyki

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

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Relacyjne systemy baz danych i język SQL

Język SQL Złączenia. Laboratorium. Akademia Morska w Gdyni

Wprowadzenie do baz danych

Przykłady normalizacji

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

3. Podzapytania, łączenie tabel i zapytań

Egzamin / zaliczenie na ocenę* 0,5 0,5

Normalizacja baz danych

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

Algebra relacji - rozwiązania zadań. Zadania

K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU

Autor: Joanna Karwowska

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

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN

Bazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,

WPROWADZENIE DO BAZ DANYCH

Projektowanie Systemów Informacyjnych

Literatura. Bazy danych s.1-1

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Transkrypt:

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 nałożonych na dane.

Model relacyjny Twórcą modelu relacyjnego jest E.F.odd, który w roku 90 ogłosił pracę dotyczącą systemu baz danych opartego na modelu danych zbudowanym z relacji. Relacja R jest to dowolny podzbiór iloczynu kartezjańskiego jednego lub więcej zbiorów: R...... k k = {( a, a,..., a k ): a i, i {,,..., k}} i

Model relacyjny Schematem R relacji nazywamy zbiór atrybutów {,..., n } Relacją r o schemacie R = {,..., n } nazywamy skończony zbiór r = {t,..., t m } odwzorowań t i : R, gdzie jest równy sumie dziedzin atrybutów,..., n, takich, że t i ( j ) j dla i=,...,m, j=,...,n. Każde takie odwzorowanie nazywamy krotką. Przykład: R={Numer, Skąd, okąd, Odlot, Przylot} t i ={(Numer,8), (Skąd, 'udapeszt'), okąd, 'Warszawa'). (Odlot, ':0'), (Przylot, ':0}

Model relacyjny Relacje mogą być reprezentowane w postaci tabel krotki wiersze (rekordy) atrybuty kolumny (pola) PROWNIY(Nazwisko, Imię, Wiek, Pensja) - schema Nazwisko Imię Wiek Pensja rekord Kowalski Jan 0 Nowak Piotr 00 Zielińska nna 0

Integralność danych - klucz Kluczem schematu R relacji nazywamy taki zbiór atrybutów K tego schematu, że przez wartości atrybutów z tego zbioru można jednoznacznie zidentyfikować każdą krotkę (tzn. żadne dwie różne krotki dowolnej relacji r rozpiętej na schemacie R nie mają tych samych wartości dla atrybutów z K własność jednoznaczności). Własności: Wartość klucza pozwala jednoznacznie identyfikować rekordy. any schemat może posiadać więcej kluczy. Każdy nadzbiór klucza jest kluczem. Klucz, którego żaden podzbiór właściwy nie jest kluczem (własność minimalności), nazywa się kluczem właściwym (kandydującym). Wśród kluczy wybiera się jeden i nazywa go się kluczem głównym.

Klucz schemat relacji NE_OSOOWE(nr_dowodu, nazwisko, imię, data_ur) nr_dowodu nazwisko imię data_ur 09 Nowak Jan 0-0- 890 Kowalski Piotr -0-0 EF 88 Nowak nna 0--9 GH 99880 ogucki ndrzej 0-0- IJ 8889 Nowak nna --9 KL 0 Smutny Waldemar -09- Kluczami są np. (nr_dowodu), (nr_dowodu, nazwisko). Kluczem właściwym jest (nr_dowodu).

Integralność danych klucz obcy Kluczem obcym schematu S relacji nazywamy zbiór atrybutów FK tego schematu, który jest kluczem kandydującym pewnego schematu R relacji. RZEMIEŚLNIK_KTO RZEMIEŚLNIK_O nazwisko adres NIP NIP wyrób cena Nowak Warszawa naszyjnik 0 Nowak Opole 8 89 obrączki 0 Nowak Gdynia 89 kolczyki Kowalski Kraków 809 809 naszyjnik Kowalski Kraków 809 kolczyki relacja nadrzędna relacja podrzędna

Integralność danych Wartość pusta (NULL) reprezentuje wartość atrybutu, która w danej chwili nie jest znana lub nie może zostać ustalona. Rodzaje relacyjnych więzów integralności: Integralność encji Każdy schemat relacji posiada klucz główny i żaden składnik klucza głównego nie akceptuje wartości pustej. Integralność referencyjna Każda wartość klucza obcego wynosi NULL lub jest równa wartości klucza kandydującego pewnej krotki w relacji nadrzędnej. Więzy ogólne odatkowe warunki poprawności danych określone przez użytkowników lub administratorów bazy danych.

Manipulowanie danymi algebra relacji lgebra relacji język proceduralny, dostarcza zbioru jawnych operacji (np. rzut, złączenie) wskazujących systemowi, jak tworzyć pewne poszukiwane relacje z relacji dostępnych w bazie danych. 0

lgebra relacji Podstawowe operacje na relacjach służące do wyszukiwania danych: Selekcja - polega na wyborze tych rekordów relacji, które spełniają określoną własność. Projekcja - polega na wyborze z relacji podzbioru atrybutów. Złą łączenie - polega na utworzeniu z danych dwóch relacji jednej relacji. Najczęściej łączy się relacje, które mają taki sam atrybut.

Selekcja - definicja ef. Selekcją relacji r o schemacie R={,..., k } dla warunku logicznego F nazywamy relację q = σ F (r) taką, że t q t r i t spełnia warunek F. NE_OSOOWE(nr_dowodu, nazwisko, imię, data_ur) nr_dowodu nazwisko imię data_ur 09 Nowak Jan 9-0-0 890 Kowalski Piotr 90-0- EF 88 Nowak nna 99--0 GH 99880 ogucki ndrzej 9-0-0 IJ 8889 Nowak nna 99-- KL 0 Smutny Waldemar 9-09- NE_OSOOWE(nr_dowodu, nazwisko, imię, data_ur) nr_dowodu nazwisko imię data_ur 09 Nowak Jan 9-0-0 EF 88 Nowak nna 99--0 IJ 8889 Nowak nna 99-- F={nazwisko=Nowak} σ nazwisko=nowak (r)

Projekcja (rzut) - definicja Projekcją relacji r o schemacie R={,..., k } na podzbiór zbioru atrybutów R nazywamy relację q = Π (r) taką, że t q ( u r)( u = t) NE_OSOOWE(nr_dowodu, nazwisko, imię, data_ur) nr_dowodu nazwisko imię data_ur 09 Nowak Jan 9-0-0 890 Kowalski Piotr 90-0- EF 88 Nowak nna 99--0 GH 99880 ogucki ndrzej 9-0-0 IJ 8889 Nowak nna 99-- KL 0 Smutny Waldemar 9-09- nazwisko imię Nowak Jan Kowalski Piotr Nowak nna ogucki ndrzej Smutny W aldemar ={nazwisko, imię} Π{nazwisko, imię}(r)

Operacje teoriomnogościowe Sumą dwóch relacji: r i s o schemacie R={,..., k } nazywamy relację q = r s o schemacie R. Przekrojem dwóch relacji: r i s o schemacie R={,..., k } nazywamy relację q = r s o schemacie R. Różnicą dwóch relacji: r i s o schemacie R={,..., k } nazywamy relację q = r \ s o schemacie R.

Iloczyn kartezjański - definicja Iloczynem kartezjańskim dwóch relacji: r o schemacie R={,..., k } i s o schemacie S={,..., m } takich, że R S=, nazywamy relację q = r s o schemacie Q=R S taką, że s S t r R t q t v S t s v u R t r u q t = = ) )( ( ) )( (

Iloczyn kartezjański - przykład r s r x s E E Jan Opole Fiat Uno Jan Opole Fiat Uno Iwona rzeg Opel orsa Jan Opole Opel orsa Piotr Nysa Iwona rzeg Fiat Uno Iwona rzeg Opel orsa Iloczyn kartezjański relacji r i s jest zbiorem wszystkich możliwych połączeń krotek z relacji r i s. Piotr Piotr Nysa Nysa Fiat Opel Uno orsa

Iloczyn kartezjański - przykład r s r x s s. Jan Opole Fiat Uno Jan Opole Fiat Uno Iwona rzeg Opel orsa Jan Opole Opel orsa Piotr Nysa Iwona rzeg Fiat Uno Jeżeli RS, to w celu obliczenia iloczynu kartezjańskiego należy najpierw zmienić nazwy powtarzających się atrybutów (np. poprzez poprzedzenie nazwy atrybutu nazwą relacji z i na s. i ). Iwona Piotr Piotr rzeg Nysa Nysa Opel Fiat Opel orsa Uno orsa

Równozłączenie - definicja Równozłączeniem dwóch relacji: r o schemacie R={,..., k,,..., n } i s o schemacie S={,..., m,,..., n } nazywamy relację q o schemacie Q={,..., k, r.,..., r. n,,..., m, s.,..., s. n } taką, że t q t t t { { { r.,...,,..., k k, r., s.,..., r. n },..., r. n,..., s. = t { s. } r n } s,..., s. n } 8

9 Równozłączenie - przykład Łączymy ze sobą te krotki, które dla wspólnych atrybutów relacji r i s mają takie same wartości. s r 0 9 8 8 8 s. q r.

Złączenie naturalne - przykład r 9 s 0 8 krotka wisząca r s 8 8 Krotka wisząca to krotka relacji, której nie można połączyć z żadną krotką w drugiej relacji 0

Złączenie naturalne - własności Π R (r s) r Π S (r s) s s r 0 9 8 q 8 8 Π S (q) Π R (q) 8 Gdy Π R (r s) = r i Π S (r s) = s, to przy złączaniu nie następuje utrata informacji.

Złączenie teta (Θ-złączenie) Θ-złączeniem relacji r i s nazywamy relację q = r Θ s będącą wynikiem operacji selekcji wg kryterium Θ iloczynu kartezjańskiego relacji r i s. r Θ s = σ Θ (r s)

Θ-złączenie - przykład s r 0 9 8 Niech Θ = (= >8) 0 9 8 0 9 8 9 s. t 0 8 r. 0 9 0 9 0 9 s. q r.

Złączenia zewnętrzne Złączenia zewnętrzne są stosowane wtedy, gdy chcemy zachować w wyniku wszystkie krotki z jednej relacji bez względu na to, czy mają one odpowiadające sobie krotki w drugiej relacji.

Lewostronne złączenie zewnętrzne Lewostronnym złączeniem zewnętrznym dwóch relacji: r o schemacie R={,..., k,,..., n } i s o schemacie S={,..., m,,..., n } nazywamy relację q o schemacie Q={,..., k,,..., n,,..., m } (Q=R S) taką, że t q t R r ( t S s i. t( i ) = NULL)

Prawostronne złączenie zewnętrzne Prawostronnym złączeniem zewnętrznym dwóch relacji: r o schemacie R={,..., k,,..., n } i s o schemacie S={,..., m,,..., n } nazywamy relację q o schemacie Q={,..., k,,..., n,,..., m } (Q=R S) taką, że t q t S s ( t R r i. t( i ) = NULL)

Złączenia zewnętrzne - przykład s r 0 9 8 Złączenie lewostronne NULL NULL 8 Złączenie prawostronne 0 9 NULL 8 krotki wiszące 8 NULL NULL 0 9 NULL Złączenie zewnętrzne

To na dzis wszystko ziękuję za uwagę!