Technologie baz danych

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

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. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

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

Bazy danych i usługi sieciowe

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

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

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

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

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

Technologie baz danych

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

Technologie baz danych

SQL (ang. Structured Query Language)

1. Mapowanie diagramu klas na model relacyjny.

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

Język SQL. Rozdział 4. Funkcje grupowe Funkcje grupowe, podział relacji na grupy, klauzule GROUP BY i HAVING.

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

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

Systemy GIS Tworzenie zapytań w bazach danych

Projektowanie baz danych

Wykład 2. Relacyjny model danych

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

TECHNOLOGIE BAZ DANYCH

Autor: Joanna Karwowska

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

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

Plan wykładu: Etapy projektowania bazy danych. Modelowanie danych za pomocą diagramów związków encji:

Wprowadzenie do baz danych

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Tworzenie projektu bazy danych z kreatorem odnośników - Filmoteka. Projekt tabel dla bazy Filmoteka

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

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

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

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

Modelowanie konceptualne model EER

Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.

Wprowadzenie do baz danych

Projektowanie Systemów Informacyjnych

Przestrzenne bazy danych Podstawy języka SQL

Relacyjne bazy danych. Podstawy SQL

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

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

Technologia informacyjna

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Bazy danych. Wykład 4: Model SERM. dr inż. Magdalena Krakowiak

Bazy Danych egzamin 9 luty, 2012 rozwiazania

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"

Grupowanie i funkcje agregujące

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Transformacja modelu ER do modelu relacyjnego

Bazy Danych egzamin poprawkowy, 2012 rozwiazania

Widok Connections po utworzeniu połączenia. Obszar roboczy

Projektowanie relacyjnych baz danych model związków encji (Entity-Relationship, ER)

Bazy Danych i Usługi Sieciowe

Bazy danych TERMINOLOGIA

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

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

KSS: Modelowanie konceptualne przykład

Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING

Relacyjne bazy danych. Podstawy SQL

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Podstawowe zapytania SELECT (na jednej tabeli)

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych

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

Agnieszka Ptaszek Michał Chojecki

WPROWADZENIE DO BAZ DANYCH

Przykładowa baza danych BIBLIOTEKA

Modelowanie związków encji

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

SQL do zaawansowanych analiz danych część 1.

1: 2: 3: 4: 5: 6: 7: 8: 9: 10:

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

1 Projektowanie systemu informatycznego

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

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji

SQL praca z tabelami 4. Wykład 7

Oracle PL/SQL. Paweł Rajba.

Transformacja modelu EER do postaci relacyjnego modelu danych. Zbyszko Królikowski

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

P o d s t a w y j ę z y k a S Q L

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Modelowanie związków encji. Oracle Designer: Diagramy związków encji. Encja (1)

Model relacyjny. Wykład II

Autor: Joanna Karwowska

Bazy danych i usługi sieciowe

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

Język DML. Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE

Podstawy języka SQL cz. 2

Autor: Joanna Karwowska

FUNKCJE SZBD. ZSE - Systemy baz danych 1

Plan wykładu. Klucz wyszukiwania. Pojęcie indeksu BAZY DANYCH. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów.

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bazy danych - wykład wstępny

Wykład 8. SQL praca z tabelami 5

Krzysztof Kadowski. PL-E3579, PL-EA0312,

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

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

Transkrypt:

Technologie baz danych Wykład 4: Diagramy związków encji (ERD). SQL funkcje grupujące. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka

Plan wykładu Diagramy związków encji elementy ERD liczności związków podklasy klucze zbiory słabych encji SQL funkcje grupujące 2

Proces modelowania i implementacji bazy danych Analiza informacji, które będą zawarte w bazie danych System zarządzania relacyjną bazą danych Diagram E/R Schemat bazy danych (Model relacyjny) 3

Elementy ERD Diagram związków encji - Entity-Relationship Diagram E/R (ERD) Zbiory encji Encja - rozróżnialny obiekt Zbiór encji (typ encji) - zbiór podobnych encji Zbiór encji (typ encji) Wykładowca Krętowska Małgorzata Oniśko Agnieszka Sosnowski Zenon... Encje (Instancje danego typu encji) 4

Elementy ERD Atrybuty - informacje opisujące encję Imię Nazwisko PRACOWNIK Id 5

Elementy diagramu E/R Związki - powiązania pomiędzy dwiema lub większą liczbą encji (zbiorów encji) Encja1 Nazwa związku Encja2 6

Przykład Baza danych filmów tytuł rok nazwisko adres Występuje Aktorzy czas rodzaj Posiada nazwa Studia adres 7

Przykład Baza danych filmów tytuł rok nazwisko adres Występuje Aktorzy czas rodzaj Potop Żurek Kingsajz Kingsajz Seksmisja Aktorzy Daniel Olbrychski Katarzyna Figura Katarzyna Figura Jerzy Stuhr Jerzy Stuhr 8

Przykład Baza danych filmów tytuł rok nazwa Posiada Studia czas rodzaj adres Potop Żurek Kingsajz Seksmisja Studia Studio1 Studio2 Studio1 Studio3 9

Liczebność związków encji N:N 1:N 1:1 10

Liczebność związków encji N:N Występuje Aktorzy 1:N Posiada Studia 1:1 Studia Kieruje Prezesi 11

Związki wieloargumentowe Kontrakty Aktorzy Studia Reprezentacja w postaci trzech wartości: (studio, aktor, film) 12

Role w związkach Przykład Studio, które podpisało kontrakt z aktorem może podpisać kontrakt z innym studiem po to, by umożliwić aktorowi udział w filmie. Reprezentacja związku: (studio1, studio2, aktor, film) Kontrakty Aktorzy Studio producenta Studio aktora Studia Role studia: producent filmu właściciel aktora 13

Atrybuty związku Gdzie umieścić wynagrodzenie aktora? wynagrodzenie tytuł rok nazwisko adres Kontrakty Aktorzy czas rodzaj Studia nazwa adres 14

Przesunięcie atrybutu do zbioru encji wynagrodzenie Gaże tytuł rok nazwisko adres Kontrakty Aktorzy czas rodzaj Studia nazwa adres 15

Przekształcanie w związki binarne Związek kontrakty: (studio1, studio2, film, aktor) Kontrakty Aktorzy Studio producenta Studio aktora Studia stworzenie dodatkowego zbioru encji, którego elementy traktuje się tak samo jak krotki zbioru związków dla związku wieloargumentowego (łączący zbiór encji) stworzenie związków wiele do jeden ze zbioru łączącego do poszczególnych zbiorów encji wchodzących w skład pierwotnego związku wieloargumentowego 16

Podklasy w ERD Podklasa = specjalny przypadek = mniej encji = więcej własności Przykład: Kreskówki i kryminały to podklasy filmów do aktorów czas tytuł rok rodzaj dubbinguje isa isa broń Kreskówki Kryminały 17

Podklasy i dziedziczenie w ERD Zakładając, że C jest podklasą klasy D na diagramach E/R należy: wprowadzić pomiędzy zbiorami encji C i D specjalny typ związku isa ( an A is a B ) - wierzchołek trójkąta wskazuje klasę nadrzędną wszystkie atrybuty i związki, które odnoszą się wyłącznie do encji C są doczepione do prostokąta oznaczającego C atrybuty i związki, które opisują zarówno C jak i D są doczepione do prostokąta oznaczającego D. Dziedziczenie w ERD: encje można oglądać jako złożone ze składowych, które należą do różnych zbiorów encji, stanowiących części hierarchii isa składowe te są powiązane w całość związkiem isa encja ma te wszystkie atrybuty, które należą do którejkolwiek składowej oraz wchodzi we wszystkie związki, w które są włączone jej składowe 18

Klucze Klucze - atrybuty lub zbiory atrybutów, które jednoznacznie identyfikują encję wewnątrz zbioru encji. W zbiorze encji nie mogą występować dwie encje, które miałyby identyczne wartości atrybutów tworzących klucz. Atrybuty, które wchodzą w skład klucza na diagramach ER są podkreślone. W hierarchii isa, tylko zbiór encji z klasy nadrzędnej (korzeń drzewa) może zawierać klucz, który jednoznacznie identyfikuje encje również w podklasach. Każdy zbiór encji musi mieć zdefiniowany klucz. tytuł rok czas rodzaj 19

Zbiory słabych encji Zbiory słabych encji - zbiory encji, dla których niektóre lub wszystkie atrybuty klucza wybiera się z innego zbioru encji. Przykład: Mamy dwa zbiory encji: Piłkarze (nazwisko, wiek) oraz Drużyny (nazwa). Jak można zdefiniować klucz dla zbioru encji Piłkarze? nazwisko wiek numer nazwa Piłkarze gra Drużyny zbiór słabych encji - prostokąt o podwójnych krawędziach związki łączące ten zbiór z innymi to związki wiele do jeden - romby o podwójnych krawędziach 20

Wymagania dla zbiorów słabych encji Jeżeli E jest zbiorem słabych encji, wówczas zbiór encji F, który dostarcza atrybutów klucza do E, musi pozostawać z E w pewnym związku R oraz Związek R musi być binarny, typu wiele do jeden z E do F Atrybuty wchodzące w skład klucza E a pochodzące z F muszą być częścią klucza w F Jeżeli zbiór F jest zbiorem słabym, to kluczowe atrybuty z F przekazywane do E mogą pochodzić z pewnego innego zbioru encji, z którym F jest powiązany poprzez związek typu wiele do jednego. Uogólniając: jeżeli zbiór encji jest oznaczony podwójną ramką, to musi być słaby. Jego klucz składa się z tych jego własnych atrybutów, które są podkreślone oraz atrybutów klucza tych zbiorów encji, z którymi zbiór słaby jest połączony przez związki typu wiele do jeden, a które oznaczono podwójnymi krawędziami. 21

Funkcje grupowe Funkcje grupowe są przeznaczone do działania na grupach wierszy. Wynikiem działania funkcji grupowej jest pojedyncza wartość dla całej grupy, a nie jedną wartość dla każdego wiersza. Przykłady funkcji: AVG ([DISTINCT] wyrażenie) COUNT ([DISTINCT] wyrażenie) COUNT(*) MAX ([DISTINCT] wyrażenie) MIN ([DISTINCT] wyrażenie) STDDEV ([DISTINCT] wyrażenie) SUM ([DISTINCT] wyrażenie) VARIANCE ([DISTINCT] wyrażenie) Wszystkie funkcje grupowe, z wyjątkiem count(*) ignorują NULL. 22

Zapytania grupujące SELECT lista pól FROM tabele WHERE warunki przed grupowaniem GROUP BY pola grupujące HAVING warunki po grupowaniu 23

Zasady wykonania zapytania grupującego Rozważ wszystkie kombinacje wierszy tabel występujących w klauzuli FROM Do każdego wiersza zastosuj warunek WHERE Podziel wiersze na grupy Do każdej grupy zastosuj warunek w klauzuli HAVING Dla każdego wiersza reprezenującego grupę oblicz wartości wyrażeń po SELECT 24

Zapytania grupujące - ograniczenia Na liście wyboru polecenia SELECT używającego grupowania wolno umieszczać tylko te kolumny, które są przedmiotem działania klauzuli GROUP BY chyba, że występują one wewnątrz funkcji grupującej. Każda kolumna lub wyrażenie występujące na liście SELECT, nie objęte funkcją grupową, musi być przedmiotem grupowania klauzulą GROUP BY. 25