Plan wykładu. Elementy ERD BAZY DANYCH. Proces modelowania i implementacji bazy danych. Diagramy związków encji. SQL podzapytania
|
|
- Franciszek Mikołajczyk
- 7 lat temu
- Przeglądów:
Transkrypt
1 Plan wykładu 2 BAZY DANYCH Wykład 4: Diagramy związków encji (ERD). SQL podzapytania. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka Diagramy związków encji elementy ERD liczności związków podklasy klucze zbiory słabych encji SQL podzapytania 3 Proces modelowania i implementacji bazy danych Analiza informacji, które będą zawarte w bazie danych System zarządzania relacyjną bazą danych 4 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) Diagram E/R Schemat bazy danych (Model relacyjny) Wykładowca Krętowska Małgorzata Oniśko Agnieszka Sosnowski Zenon... Encje (Instancje danego typu encji)
2 5 Elementy ERD Atrybuty - informacje opisujące encję Imię Nazwisko 6 Elementy diagramu E/R Związki - powiązania pomiędzy dwiema lub większą liczbą encji (zbiorów encji) PRACOWNIK Encja1 Nazwa związku Encja2 Id Przykład Baza danych filmów Przykład Baza danych filmów 7 8 Występuje Występuje Posiada Potop Żurek Kingsajz Kingsajz Seksmisja Daniel Olbrychski Katarzyna Figura Katarzyna Figura Jerzy Stuhr Jerzy Stuhr
3 Przykład Baza danych filmów Liczność związków encji 9 10 N:N Posiada Występuje 1:N Posiada Potop Żurek Kingsajz Seksmisja Studio1 Studio2 Studio1 Studio3 1:1 Kieruje Prezesi Związki wieloargumentowe 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) Studio producenta Studio aktora Reprezentacja w postaci trzech wartości: (studio, aktor, film) Role studia: producent filmu właściciel aktora
4 Atrybuty związku 13 Gdzie umieścić wynagrodzenie aktora? 14 Przesunięcie atrybutu do zbioru encji wynagrodzenie wynagrodzenie Gaże Przekształcanie w związki binarne Podklasy w ERD 15 Związek kontrakty: (studio1, studio2, film, aktor) 16 Podklasa = specjalny przypadek = mniej encji = więcej własności Przykład: Kreskówki i kryminały to podklasy filmów Studio producenta Studio aktora do aktorów 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 dubbinguje Kreskówki isa isa Kryminały broń
5 Podklasy i dziedziczenie w ERD Klucze 17 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 - 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. 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 (, wiek) oraz Drużyny (). Jak można zdefiniować klucz dla zbioru encji Piłkarze? Piłkarze wiek numer gra zbiór słabych encji - prostokąt o podwójnych krawędziach Drużyny 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ów 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.
6 SQL Podzapytania Podzapytania skorelowane Operator EXISTS Podzapytania Podzapytanie - polecenie SELECT zagnieżdżone w innym poleceniu SELECT. Umożliwia konstruowanie zapytania odwołującego się do wartości wybranych przez inne polecenie SELECT. 21 Przykład: SELECT kolumna1, kolumna2,... FROM tabela WHERE kolumna = (SELECT kolumna FROM tabela WHERE warunek) 22 Podzapytania zwracające jeden wiersz Wynikiem jest pojedynczy wiersz. Przykład: Znaleźć pracowników z pensją równą minimalnemu zarobkowi w firmie. Co należy robić po kolei? 1. Znajdujemy minimalną pensję: SQL> select min(pensja) from pracownik; MIN(PENSJA) Znajdujemy pracowników o pensji równej wartości obliczonej w pierwszym ku: select, stanowisko, pensja from pracownik where pensja =<wynik poprzedniego zapytania> 23 Podzapytania zwracające jeden wiersz Wstawiając zapytanie 1 do 2, otrzymujemy: SQL> select, stanowisko, pensja from pracownik where pensja =(select min(pensja) from pracownik); stanowisko pensja SMITH CLERK 800 Przebieg wykonania zapytania: realizacja zapytania wewnętrznego na podstawie wartości zwróconej przez blok wewnętrzny przetwarzany jest blok główny zapytania W przypadku zapytań zwracających jeden wiersz mogą być stosowane zwykłe operatory porównania: =, >, <=,... 24
7 Sygnalizacja błędów Operatory ANY i ALL Co się stanie, jeżeli podzapytanie zwraca więcej niż jeden wiersz a w warunku zostanie użyty operator do porównywania jednego wyniku? SQL> select, pensja, nr_departamentu from pracownik where pensja = (select min(pensja) from pracownik group by nr_departamentu); where pensja = (select min(pensja) from pracownik group by nr_departamentu) * BŁĄD w linii 2: ORA-01427: jednowierszowe podzapytanie zwraca więcej niż jeden wiersz Podobnie jeżeli podzapytanie nie zwróci żadnego Opearatory ANY i ALL można stosować w podzapytaniach zwracających więcej niż jeden wiersz. Wykorzystuje się je w klauzulach WHERE I HAVING łącznie z operatorami porównywania (=;!=; <; >; <=; >=) Operator ANY powoduje akceptację (spełnienie warunku) po stwierdzeniu zgodności wyrażenia z którąkolwiek z wartości zwracanych przez podzapytanie wiersza. Podzapytania - wskazówki Wewnętrzne zapytanie musi być ujęte w nawiasy i musi występować po prawej stronie warunku W podzapytaniu nie wolno stosować klauzuli ORDER BY. Obowiązuje zasada jednej klauzuli ORDER BY dla całego polecenia SELECT. Jeśli jest potrzebna umieszczamy ją jako ostatnią Kolumny występujące na liście wyboru wewnętrznego zapytania muszą występować w kolejności zgodnej z kolejnością kolumn ujętych w nawiasy warunku zapytania głównego. Musi 27 również występować zgodność co do liczby i typu kolumn wybieranych w bloku wewnętrznym i kolumn Podzapytania zwracające wiele atrybutów Znaleźć pracowników o pensjach z listy najniższych zarobków osiąganych w departamentach. SQL> select, pensja, nr_departamentu from pracownik where pensja in (select min(pensja) from pracownik group by nr_departamentu); pensja nr_departamentu SMITH JAMES MILLER
8 29 Podzapytania zwracające wiele atrybutów W jaki sposób można uzyskać informacje o pracownikach zarabiających najmniej w ich departamentach? (Metoda 1) SQL> select, pensja, nr_departamentu from pracownik where (pensja,nr_departamentu) in (select min(pensja), nr_departamentu from pracownik group by nr_departamentu); pensja nr_departamentu SMITH JAMES MILLER Uwagi WHERE (kolumna1, kolumna 2...) = (SELECT kol1, kol2...) kolumny w bloku zewnętrznym powinny być ujęte w nawiasy i oddzielone przecinkami powinna być zgodność co do liczby i typu kolumn wybieranych w bloku wewnętrznym i kolumn bloku zewnętrznego porównywanych z nimi 30 Podzapytania skorelowane W jaki sposób można uzyskać informacje o pracownikach zarabiających najmniej w ich departamentach? (Metoda 2) SQL> select, pensja, nr_departamentu from pracownik e where pensja = (select min(pensja) from pracownik where e.nr_departamentu=pracownik.nr_departamentu group by nr_departamentu); pensja nr_departamentu SMITH JAMES MILLER Podzapytania skorelowane uwagi Każdy wiersz proponowany przez zapytanie główne przechodzi próbę warunku wyrażonego za pomocą zapytania skorelowanego, w którym występuje odwołanie do wartości kolumn tego wiersza. Wykonanie SELECT z podzapytaniem skorelowanym: pobranie wiersza przez zewnętrzne zapytanie wykonanie wewnętrznego zapytania na podstawie 32 wartości z pobranego w pkt 1. Wiersza zaakceptowanie bądź odrzucenie wiersza na
9 Podzapytania w klauzuli HAVING Zagnieżdżanie zapytań Wybrać te departamenty, których średnie zarobki przekraczają średni zarobek departamentu 30. Select nr_departamentu, avg(pensja) from pracownik group by nr_departamentu having avg(pensja) >(select avg(pensja) from pracownik where nr_departamentu=30); Znaleźć stanowisko pracy, na którym są najwyższe średnie zarobki. 33 Select stanowisko, avg(pensja) from pracownik Znaleźć pracowników, których zarobki przekraczają najwyższą pensję z departamentu SALES. SQL> select, stanowisko, data_zatrudnienia, pensja from pracownik where pensja> (select max(pensja) from pracownik where nr_departamentu= stanowisko data_zatrudnienia pensja JONES MANAGER 81/04/ SCOTT ANALYST 87/04/ KING PRESIDENT 81/11/ FORD ANALYST 81/12/ (select nr_departamentu from departament where = SALES')); 34 Operator EXISTS W przypadku zapytań skorelowanych ami nie interesuje nas wynik zapytania, ale jedynie czy wiersz o zadanych przez nas warunkach istnieje. Wów wykorzystujemy operator EXISTS. EXISTS (podzapytanie) - zwraca true jeżeli podzapytanie zwróci przynajmniej jeden wiersz NOT EXISTS(podzapytanie) zwraca true jeżeli podzapytanie nie zwróci żadnego wiersza 35
Technologie baz danych
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
Bardziej szczegółowoBazy 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ółowoTechnologie baz danych
Plan wykładu Technologie baz danych Wykład 6: Algebra relacji. SQL - cd Algebra relacji operacje teoriomnogościowe rzutowanie selekcja przemianowanie Małgorzata Krętowska Wydział Informatyki Politechnika
Bardziej szczegółowoBazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)
Plan wykładu Bazy danych Wykład 2: Diagramy zwizków encji (ERD) Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory słabych encji Małgorzata Krtowska Katedra Oprogramowania e-mail:
Bardziej szczegółowoBazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)
Plan wykładu Bazy danych Wykład 2: Diagramy zwizków encji (ERD) Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory słabych encji Małgorzata Krtowska Katedra Oprogramowania e-mail:
Bardziej szczegółowoBazy danych i usługi sieciowe
Bazy danych i usługi sieciowe Modelowanie związków encji Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. II Jesień 2014 1 / 28 Modelowanie Modelowanie polega na odwzorowaniu
Bardziej szczegółowoPodzapytania. SELECT atrybut_1, atrybut_2,... FROM relacja WHERE atrybut_n operator (SELECT atrybut_1, FROM relacja WHERE warunek
Podzapytania Podzapytanie jest poleceniem SELECT zagnieżdżonym w innym poleceniu SELECT. Podzapytanie może wystąpić wszędzie tam, gdzie system spodziewa się zbioru wartości, czyli w klauzulach SELECT,
Bardziej szczegółowoBazy 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ółowoJęzyk SQL. Rozdział 6. Podzapytania Podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, operatory ANY, ALL i EXISTS.
Język SQL. Rozdział 6. Podzapytania Podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, operatory ANY, ALL i EXISTS. 1 Podzapytania Podzapytanie jest poleceniem SELECT zagnieżdżonym
Bardziej szczegółowoPodzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę
Podzapytania Rozdział 5 Podzapytania podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, klauzula WITH, operatory ANY, ALL i EXISTS, zapytania hierarchiczne Podzapytanie jest poleceniem
Bardziej szczegółowoPodzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę
Podzapytania Rozdział 5 Podzapytania podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, klauzula WITH, operatory ANY, ALL i EXISTS, zapytania hierarchiczne Podzapytanie jest poleceniem
Bardziej szczegółowoPodzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę
Podzapytania Rozdział 5 Podzapytania podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, klauzula WITH, operatory ANY, ALL i EXISTS, zapytania hierarchiczne Podzapytanie jest poleceniem
Bardziej szczegółowoBazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B
Plan wykładu Bazy danych Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania Definicja zalenoci funkcyjnych Klucze relacji Reguły dotyczce zalenoci funkcyjnych Domknicie zbioru atrybutów
Bardziej szczegółowoPODZAPYTANIE (SUBSELECT)
2. Podzapytania PODZAPYTANIE (SUBSELECT) oddzielna, ujęta w nawiasy instrukcja SELECT, zagnieżdżona w innej instrukcji SQL, zazwyczaj w instrukcji SELECT W instrukcji SELECT, podzapytanie może być umieszczone
Bardziej szczegółowoBazy danych wykład trzeci. trzeci Modelowanie schematu bazy danych 1 / 40
Bazy danych wykład trzeci Modelowanie schematu bazy danych Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa trzeci Modelowanie schematu bazy danych 1 / 40 Outline 1 Zalezności funkcyjne
Bardziej szczegółowoBazy danych. Plan wykładu. Podstawy modeli relacyjnych. Diagramy ER. Wykład 3: Relacyjny model danych. SQL
Plan wykładu Bazy danych Wykład 3: Relacyjny model danych. SQL Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - podstawy Małgorzata Krtowska Katedra Oprogramowania e-mail:
Bardziej szczegółowo3. Podzapytania, łączenie tabel i zapytań
3. Podzapytania, łączenie tabel i zapytań I. PODZAPYTANIE (SUBSELECT) oddzielna, ujęta w nawiasy instrukcja SELECT, zagnieżdżona w innej instrukcji SQL, zazwyczaj w instrukcji SELECT w instrukcji SELECT,
Bardziej szczegółowoBazy 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ółowoTECHNOLOGIE BAZ DANYCH
TECHNOLOGIE BAZ DANYCH WYKŁAD 3 Diagramy związków encji. Funkcje agregujące. (Wybrane materiały) Dr inż. E. Busłowska Copyright 2014-2015 E. Busłowska. 1 DIAGRAMY ZWIĄZKÓW ENCJI (DZE) Metoda graficznej
Bardziej szczegółowoBazy danych. Plan wykáadu. Powtórzenie BCNF i 3NF. Nowa forma redundancji. Wykáad 6: Postaci normalne. SQL - zapytania záo*one.
Plan wykáadu Bazy danych Wykáad 6: Postaci normalne. SQL - zapytania záo*one. Maágorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl Zale*noci wielowartociowe Czwarta postaü normalna
Bardziej szczegółowoWykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.
Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania. Przykładowa RBD o schematach relacji (tzw. płaska postać RBD): N(PRACOWNICY) = {ID_P, IMIĘ,
Bardziej szczegółowoGrupowanie i funkcje agregujące
Grupowanie i funkcje agregujące Zadanie 1. Stwórz odpowiednią tabelę Test_agr i wprowadź odpowiednie rekordy tak, aby wynik zapytania SELECT AVG(kol) avg_all, AVG(DISTINCT kol) avg_dist, COUNT(*) count_gw,
Bardziej szczegółowoTechnologie 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ółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING ] [ORDER BY ] [ ] instrukcja może
Bardziej szczegółowoSQL (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ółowoWymagania: Konstrukcja prostych zapytań w języku SQL, umiejętność wykorzystania funkcji wierszowych i agregujących.
Celem ćwiczenia jest zaprezentowanie zagadnień dotyczących stosowania podzapytań ń w zapytaniach języka ę SQL. Podzapytania są ą konstrukcjami, pozwalającymi na wykonywanie zapytań w stylu podaj nazwisko
Bardziej szczegółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING ] [ORDER BY ] [ ] instrukcja może
Bardziej szczegółowoBAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski
BAZY DANYCH model związków encji Opracował: dr inż. Piotr Suchomski Świat rzeczywisty a baza danych Świat rzeczywisty Diagram związków encji Model świata rzeczywistego Założenia, Uproszczenia, ograniczenia
Bardziej szczegółowoPodstawowe zapytania SELECT (na jednej tabeli)
Podstawowe zapytania SELECT (na jednej tabeli) Struktura polecenia SELECT SELECT opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje FROM nazwy tabel lub widoków WHERE warunek (wybieranie wierszy) GROUP
Bardziej szczegółowoBazy danych. Plan wykáadu. Proces modelowania i implementacji bazy danych. Elementy ERD
Plan wykáadu Wykáad 2: Diagramy zwizków encji (ERD) SQL - áczenie tabel, zapytania grupujce Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory sáabych encji Maágorzata Krtowska,
Bardziej szczegółowoLaboratorium Bazy danych SQL 3 1
Laboratorium Bazy danych SQL 3 1 F U N K C J E operujące na grupach wierszy: avg([distinct all]kol) oblicza średnią arytmetyczną wartości kolumny kol wszystkich wierszy grupy. count([distinct all]wyr)
Bardziej szczegółowoZadania SELECT do schematu EDS (EMP, DEPT, SALGRADE)
Zadania SELECT do schematu EDS (EMP, DEPT, SALGRADE) W Bazie występują trzy tabele, o następujących schematach: EMP {empno(pk), ename, deptno(fk), mgr(fk), sal, comm, hiredate, job} DEPT {deptno(pk), dname,
Bardziej szczegółowoWykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Bardziej szczegółowoPlan wykładu. Problemy w bazie danych. Problemy w bazie danych BAZY DANYCH
Plan wykładu 2 ZY DNYH Wykład 3: Sprowadzanie do postaci normalnych. SQL zapytania grupujące Małgorzata Krętowska Wydział Informatyki Politechnika iałostocka Problemy w bazie danych Przykład sprowadzenia
Bardziej szczegółowoBazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski
Bazy danych Andrzej Grzybowski Instytut Fizyki, Uniwersytet Śląski Wykład 1 Algebra relacyjnych baz danych jako podstawa języka SQL i jego implementacji w systemach baz danych Oracle Bazy danych. Wykład
Bardziej szczegółowoBazy Danych egzamin poprawkowy, 2012 rozwiazania
Bazy Danych egzamin poprawkowy, 2012 rozwiazania 1 Zadania 1. (20p) Stwórz diagram ER dla następującego opisu bazy danych. W szczególności oznacz słabe encje, klucze, rodzaje związków (czy wiele do jednego,
Bardziej szczegółowoWprowadzenie 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ółowoPlan 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ółowo1. Mapowanie diagramu klas na model relacyjny.
Rafał Drozd 1. Mapowanie diagramu klas na model relacyjny. 1.1 Asocjacje Wpływ na sposób przedstawienia asocjacji w podejściu relacyjnym ma przede wszystkim jej liczność (jeden-do-jednego, jeden-do-wielu,
Bardziej szczegółowo030 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ółowoBAZY 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ółowo77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele
Bardziej szczegółowoMateriały szkoleniowe. Podstawy języka SQL
Materiały szkoleniowe Podstawy języka SQL Spis treści Zawartość tabel wykorzystywanych na kursie... 4 Zawartość tabeli DEPT...5 Zawartość tabeli EMP...5 Zawartość tabeli SALGRADE...5 Budowa tabel wykorzystywanych
Bardziej szczegółowoOgólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret
Ogólny plan przedmiotu BAZY DANYCH Wykład 1: Wprowadzenie do baz danych Małgorzata Krętowska Politechnika Białostocka Wydział Informatyki Wykład : Wprowadzenie do baz danych Normalizacja Diagramy związków
Bardziej szczegółowoWprowadzenie do baz danych
Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych
Bardziej szczegółowoBazy Danych egzamin 9 luty, 2012 rozwiazania
Bazy Danych egzamin 9 luty, 2012 rozwiazania 1 Zadania 1. Stwórz diagram ER dla następującego opisu bazy danych drużyn i rozgrywek lig regionalnych. W szczególności oznacz słabe encje, klucze, rodzaje
Bardziej szczegółowoPodstawy języka SQL cz. 2
Podstawy języka SQL cz. 2 1. Operatory zbiorowe a. UNION suma zbiorów z eliminacją powtórzeń, b. EXCEPT różnica zbiorów z eliminacją powtórzeń, c. INTERSECT część wspólna zbiorów z eliminacją powtórzeń.
Bardziej szczegółowoWykł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ółowoProjektowanie baz danych
Projektowanie baz danych Etapy procesu projektowania BD Określenie celów, jakim ma służyć baza danych (w kontakcie z decydentem z firmy zamawiającej projekt). Sprecyzowanie zakresu dostępnych danych, kategorii
Bardziej szczegółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska Jeśli pobieramy dane z więcej niż jednej tabeli, w rzeczywistości wykonujemy tak zwane złączenie. W SQL istnieją instrukcje pozwalające na formalne wykonanie złączenia tabel - istnieje
Bardziej szczegółowoGrupowanie i funkcje agregacji. Grupowanie z użyciem rollup
Grupowanie i funkcje agregacji Grupowanie z użyciem rollup Funkcje agregujące: COUNT([DISTINCT] wyrażenie *), MIN(wyrażenie), MAX(wyrażenie), SUM([DISTINCT] wyrażenie), AVG([DISTINCT] wyrażenie). Klauzula
Bardziej szczegółowoBazy danych wykład trzeci. trzeci Przekształcenie modelu ER na model relacyjny 1 / 19
Bazy danych wykład trzeci Przekształcenie modelu ER na model relacyjny Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa trzeci Przekształcenie modelu ER na model relacyjny 1 / 19 Przekształcanie
Bardziej szczegółowoTechnologie baz danych WYKŁAD 7: Wyjątki
Wydział Informatyki Politechnika Białostocka Obsługa wyjątków Technologie baz danych WYKŁAD 7: Wyjątki [] [] Agnieszka Oniśko, Małgorzata Krętowska TBD-wyjątki 1 TBD-wyjątki 2 Sposoby powstania sytuacji
Bardziej szczegółowoZasady transformacji modelu DOZ do projektu tabel bazy danych
Zasady transformacji modelu DOZ do projektu tabel bazy danych A. Obiekty proste B. Obiekty z podtypami C. Związki rozłączne GHJ 1 A. Projektowanie - obiekty proste TRASA # * numer POZYCJA o planowana godzina
Bardziej szczegółowoPodzapytania. Podzapytania nieskorelowane i skorelowane
Podzapytania w SQL 1 Bazy Danych Wykład p.t. Podzapytania. Zagnieżdżanie zapytań. Podzapytania nieskorelowane i skorelowane Antoni Ligęza ligeza@agh.edu.pl http://galaxy.uci.agh.edu.pl/~ligeza Wykorzystano
Bardziej szczegółowoLaboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING
Laboratorium nr 5 Temat: Funkcje agregujące, klauzule GROUP BY, HAVING Celem ćwiczenia jest zaprezentowanie zagadnień dotyczących stosowania w zapytaniach języka SQL predefiniowanych funkcji agregujących.
Bardziej szczegółowoOracle11g: Wprowadzenie do SQL
Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom
Bardziej szczegółowoINFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji
Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami
Bardziej szczegółowoPLAN 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ółowoPlan wykładu: Etapy projektowania bazy danych. Modelowanie danych za pomocą diagramów związków encji:
Plan wykładu: Etapy projektowania bazy danych. Modelowanie danych za pomocą diagramów związków encji: podstawowe pojęcia: encja, atrybut, związek, rodzaje atrybutów, liczebność związków, związki wieloargumentowe,
Bardziej szczegółowoPrzygotowanie do egzaminu. część I
1 Przygotowanie do egzaminu część I Modelowanie związków encji 2 Narysuj schemat EER dla poniższej rzeczywistości. Oznacz unikalne identyfikatory encji. Dla każdego związku zaznacz jego opcjonalność/obowiązkowość
Bardziej szczegółowoJęzyk SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych
Politechnika Śląska Instytut Informatyki instrukcja laboratoryjna laboratorium Bazy Danych przygotowali: mgr inż. Paweł Kasprowski (Kasprowski@zti.iinf.polsl.gliwice.pl) mgr inż. Bożena Małysiak (bozena@ivp.iinf.polsl.gliwice.pl)
Bardziej szczegółowoBazy 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ółowoDiagramy związków encji. Laboratorium. Akademia Morska w Gdyni
Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie
Bardziej szczegółowoKonstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT
Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania
Bardziej szczegółowoWykład XII. optymalizacja w relacyjnych bazach danych
Optymalizacja wyznaczenie spośród dopuszczalnych rozwiązań danego problemu, rozwiązania najlepszego ze względu na przyjęte kryterium jakości ( np. koszt, zysk, niezawodność ) optymalizacja w relacyjnych
Bardziej szczegółowoPRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Bardziej szczegółowoRelacyjny 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ółowo1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
Grupa A (LATARNIE) Imię i nazwisko: Numer albumu: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Nazwisko prowadzącego: 11: 12: Suma: Ocena: Zad. 1 (10 pkt) Dana jest relacja T. Podaj wynik poniższego zapytania (podaj
Bardziej szczegółowoSQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL
Wprowadzenie do SQL SQL - Structured Query Language -strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w relacyjnych bazach danych Powstał w firmie
Bardziej szczegółowoWykł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ółowo2010-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ółowoGrupowanie i funkcje agregacji
Grupowanie i funkcje agregacji Funkcje agregujące: COUNT([DISTINCT] wyrażenie *), MIN(wyrażenie), MAX(wyrażenie), SUM([DISTINCT] wyrażenie), AVG([DISTINCT] wyrażenie). Klauzula GROUP BY Grupowanie polega
Bardziej szczegółowoTeoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 8b: Algebra relacyjna http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2009/tpi-2009 Prof. dr hab. Elżbieta Richter-Wąs 1 Algebra relacyjna Algebra relacyjna (ang.
Bardziej szczegółowoPaweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,
Bardziej szczegółowoJęzyk SQL. Rozdział 7. Zaawansowane mechanizmy w zapytaniach
Język SQL. Rozdział 7. Zaawansowane mechanizmy w zapytaniach Ograniczanie rozmiaru zbioru wynikowego, klauzula WITH, zapytania hierarchiczne. 1 Ograniczanie liczności zbioru wynikowego (1) Element standardu
Bardziej szczegółowoBazy Danych i Usługi Sieciowe
Bazy Danych i Usługi Sieciowe Ćwiczenia IV Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. IV Jesień 2011 1 / 13 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z
Bardziej szczegółowoSQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska
SQL TECHNOLOGIE BAZ DANYCH Wykład 5: Język DDL i DML. SQL (ang. StructuredQueryLanguage) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych oraz do umieszczania i pobierania
Bardziej szczegółowoModel 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ółowoPodzapytania do tabel W miejscu w którym możemy użyć nazwy tabeli, możemy użyć podzapytania
Plan Podzapytania (subqueries) Podzapytania do tabel Podzapytanie jako wyrażenie Podzapytania skorelowane operatory IN, NOT IN operatory EXISTS, NOT EXISTS Podzapytania do tabel W miejscu w którym możemy
Bardziej szczegółowoWstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9
Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9 Tabele 9 Klucze 10 Relacje 11 Podstawowe zasady projektowania tabel 16 Rozdział 2. Praca z tabelami 25 Typy danych 25 Tworzenie tabel 29 Atrybuty kolumn
Bardziej szczegółowoZachodniopomorski Uniwersytet Technologiczny w Szczecinie. Bazy danych. Wykład 4: Model SERM. dr inż. Magdalena Krakowiak
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 4: Model SERM dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Słabości modelu ERD Wraz ze wzrostem złożoności obiektów
Bardziej szczegółowoInformatyka Ć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ółowoBazy 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ółowoProjektowanie relacyjnych baz danych model związków encji (Entity-Relationship, ER)
BAZY DANYCH wykład 8 Projektowanie relacyjnych baz danych model związków encji (Entity-Relationship, ER) Dr hab. Sławomir Zadrożny, prof. PR Modelowanie E/R Umożliwia projektowanie schematu bazy danych
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
Bardziej szczegółowoPodstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko
Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych
Bardziej szczegółowoZadania z SQLa (MS SQL Server)
Zadania z SQLa (MS SQL Server) Struktura testowej bazy danych (diagram ERD): opracował dr Robert Fidytek SPIS TYPÓW ZADAŃ 1 Projekcja wyników zapytań (SELECT FROM )... 3 2 Sortowanie wyników zapytań (ORDER
Bardziej szczegółowoRelacji między tabelami klucze obce. Schemat bazy danych, wczytanej z pliku create_tables.sql. Klucz obcy jako ograniczenie dla kolumny
Schemat bazy danych, wczytanej z pliku create_tables.sql Relacji między tabelami klucze obce Klucz obcy jako ograniczenie dla kolumny customer_id INTEGER NOT NULL REFERENCES customer(customer_id), CONSTRAINT
Bardziej szczegółowoTransformacja modelu ER do modelu relacyjnego
Transformacja modelu ER do modelu relacyjnego Wykład przygotował: Robert Wrembel BD wykład 4 (1) 1 Plan wykładu Transformacja encji Transformacja związków Transformacja hierarchii encji BD wykład 4 (2)
Bardziej szczegółowoPawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl
Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p
Bardziej szczegółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska W bazie danych przechowujemy tylko niektóre informacje o świecie rzeczywistym. Wybór właściwych wycinków rzeczywistości i dotyczących ich danych jest bardzo istotny od niego zależy
Bardziej szczegółowoBaza danych sql. 1. Wprowadzenie
Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z edytora graficznego struktury bazy danych, który
Bardziej szczegółowoProjektowanie 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ółowoW tym modelu wszystkie dane przechowywane są w jednym arkuszu, tabeli, pliku.
Modele danych Model danych to zintegrowany zbiór zasad opisujących dane, relacje, powiązania (stosunki) pomiędzy danymi, dozwolone operacje i ograniczenia nakładane na dane i operacje. Model danych jest
Bardziej szczegółowoFazy przetwarzania zapytania zapytanie SQL. Optymalizacja zapytań. Klasyfikacja technik optymalizacji zapytań. Proces optymalizacji zapytań.
1 Fazy przetwarzania zapytanie SQL 2 Optymalizacja zapytań część I dekompozycja optymalizacja generacja kodu wyraŝenie algebry relacji plan wykonania kod katalog systemowy statystyki bazy danych wykonanie
Bardziej szczegółowoTworzenie projektu bazy danych z kreatorem odnośników - Filmoteka. Projekt tabel dla bazy Filmoteka
Tworzenie projektu bazy danych z kreatorem odnośników - Filmoteka Projekt tabel dla bazy Filmoteka Kolejność tworzenia tabel w bazie nie jest dowolna jako pierwsze należy utworzyć tabele słownikowe, potem
Bardziej szczegółowoWykład 5 Fizyczne projektowanie bazy danych (Paul Beynon-Davies, Systemy baz danych )
Zawartość wykładu: Wykład 5 Fizyczne projektowanie bazy danych (Paul Beynon-Davies, Systemy baz danych ) 1) Logiczne projektowanie bazy danych 2) Fizyczne projektowanie bazy danych 3) Zdefiniowanie wydajności
Bardziej szczegółowoTechnologia 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