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

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

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

Technologie baz danych

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

Wprowadzenie do języka SQL

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

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

Technologie baz danych

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. Proces modelowania i implementacji bazy danych. Elementy ERD

Język SQL. Rozdział 2. Proste zapytania

BAZY DANYCH. Wykład 1: Wprowadzenie do baz danych. Marcin Czajkowski. Przygotowanie wykładu: Małgorzata Krętowska

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

Przestrzenne bazy danych Podstawy języka SQL

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

Bazy danych. Zaliczenie. Literatura. Strony WWW. Wykáad 1: Wprowadzenie do baz danych

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

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

Systemy GIS Tworzenie zapytań w bazach danych

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

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

Wprowadzenie do baz danych

Bazy danych Podstawy teoretyczne

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

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

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

Wykład 5. SQL praca z tabelami 2

Relacyjne bazy danych. Podstawy SQL

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

Podstawowe zapytania SELECT (na jednej tabeli)

opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)

Relacyjne bazy danych. Podstawy SQL

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

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

Wyświetl imie i nazwisko ucznia, nazwę przedmiotu z którego otrzymał ocenę niedostateczną. Nazwij tę kwerendę oceny niedostateczne.

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

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

Model relacyjny. Wykład II

Podstawy języka SQL Co to jest SQL? Możliwości SQL SQL*Plus

1 Wstęp do modelu relacyjnego

Bazy Danych i Usługi Sieciowe

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

Wybór wszystkich danych: SELECT * FROM employee Wybór określonych kolumn lub wyrażeń: SELECT first_name, last_name, salary FROM employee

Marek Rakowski Podstawy zdania SELECT Strona 1 z 12

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

Autor: Joanna Karwowska

Autor: Joanna Karwowska

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

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

Wstęp do SQL. copyright: KGiIS WGGiOŚ AGH

Model relacyjny. Wykład II

Technologie baz danych

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

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

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

Obliczenia arytmetyczne. Konkatenacja pól. Aliasy kolumn. Aliasy tabel. Co dalej? Rozdział 4. Korzystanie z funkcji. Zastosowanie funkcji

Paweł Rajba

SQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska

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

ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład

PODZAPYTANIE (SUBSELECT)

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych i usługi sieciowe

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

Przykłady wyrae uywanych w kwerendach i filtrach

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli

Bazy danych i usługi sieciowe

Wykład 05 Bazy danych

Szkolenie Oracle SQL podstawy. Terminy lutego 2010 First Minute! 1100zł!

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

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1

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

Wykład :45 BD-1 W_3

Widok Connections po utworzeniu połączenia. Obszar roboczy

3. Podzapytania, łączenie tabel i zapytań

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

Ćwiczenie zapytań języka bazy danych PostgreSQL

SQL praca z tabelami 4. Wykład 7

Bazy danych i usługi sieciowe

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

Projektowanie systemów baz danych

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych

Wyższa Szkoła Zarządzania i Marketingu w Sochaczewie. Grzegorz Domaoski. grzegorz.domanski@wszim-sochaczew.edu.pl. MS SQL Server

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

SQL (ang. Structured Query Language)

SQL Structured Query Language

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

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

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

BAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski

Utwórz klucz podstawowy relacji na podstawie unikalnego identyfikatora encji. podstawie kluczy podstawowych wiązanych relacji.

Oracle PL/SQL. Paweł Rajba.

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Bazy danych 2. Wykład 4 Structured Query Language (SQL)

Zasady transformacji modelu DOZ do projektu tabel bazy danych

SIECI KOMPUTEROWE I BAZY DANYCH

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

Transkrypt:

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: mmac@ii.pb.bialystok.pl Bazy danych (studia dzienne) 2 Podstawowe elementy ERD zbiory encji encje atrybuty zwizki Licznoci Klucze Podklasy Zbiory słabych encji Diagramy ER Podstawy modeli relacyjnych Reprezentacja danych: dwuwymiarowa tabela, zwana relacj Przykład: Atrybuty Tytuł Rok Czas Rodzaj urek 2003 71 Kolor Kingsajz 1987 104 Kolor Seksmisja 1984 117 Kolor Krotki Bazy danych (studia dzienne) 3 Bazy danych (studia dzienne) 4

Podstawy modeli relacyjnych Schemat relacji - nazwa relacji oraz jej zbiór atrybutów Film (tytuł, rok, czas, rodzaj) W modelu relacyjnym projekt składa si z jednego lub kilku schematów relacji. Zbiór schematów relacji jest okrelany schematem relacyjnym bazy danych lub schematem bazy danych. Krotki - wiersze relacji, poza wierszem nagłówka, zawierajcym atrybuty relacji W krotce kady atrybut ma swój odpowiednik w postaci składowej krotki Przykład: (Gwiezdne wojny, 1977, 124, kolor) Jedna krotka nie moe wystpi w relacji wicej ni jeden raz. Podstawy modeli relacyjnych Dziedziny -pewien okrelony typ elementarny, powizany z kadym atrybutem relacji W modelu relacyjnym kada składowa kadej relacji musi mie okrelony typ atomowy (elementarny) np. typ całkowity, znakowy. Warto atrybutu nie moe by ani rekordem, ani list, ani zbiorem... Przykład: Film (tytuł, rok, czas, rodzaj) Bazy danych (studia dzienne) 5 Bazy danych (studia dzienne) 6 Równowane sposoby reprezentowania relacji Schematy i krotki relacji s zbiorami, std porzdek w jakim je przedstawimy nie ma znaczenia. Tytuł Rok Czas Rodzaj urek 2003 71 Kolor Kingsajz 1987 104 Kolor Seksmisja 1984 117 Kolor (urek, 2003, 95, kolor) Rodzaj Tytuł Rok Czas Kolor urek 2003 71 Kolor Kingsajz 1987 104 Kolor Seksmisja 1984 117 (Kolor, urek, 2003, 95) Bazy danych (studia dzienne) 7 Formalny zapis krotki Instancje Krotka - funkcja przeprowadzajca atrybuty ze schematu relacji do ich zbiorów wartoci - do składowych tych krotek: tytuł -> urek rok -> 2003 czas -> 95 rodzaj -> Kolor Instancja relacji - zbiór krotek danej relacji Instancja bieca - zbiór krotek, które s w relacji teraz Bazy danych (studia dzienne) 8

Od diagramów ERD do relacji Zwizki wieloargumentowe Zbiory encji przekształcamy w relacj z takim samym zbiorem atrybutów: Filmy Kontrakty Aktorzy Zwizki z diagramów encji przyjmuj posta relacji. Relacja danego zwizku R ma nastpujce atrybuty: dla kadego zbioru encji uczestniczcego w R umieszczamy w schemacie relacji odpowiadajcej R klucze tych zbiorów jako atrybuty tej relacji jeli zwizek ma własny klucz, to te dołczamy jego atrybuty do zbioru atrybutów relacji Uwaga: w przypadku powtarzania si nazw atrybutów naley zmieni ich nazwy Studio producenta Studia Studio aktora Tabela kontrakty: Klucz dla zbioru Filmy: tytuł, rok Klucz dla zbioru Aktorzy: nazwiskoaktora Klucz dla Studia producenta: studioproducenta Klucz dla Studia aktora: studioaktora Bazy danych (studia dzienne) 9 Bazy danych (studia dzienne) 10 Złoenie relacji Dopuszcza si moliwo złoenia dwóch relacji: relacji zwizanej z danym zbiorem encji E z relacj powstał ze zwizku R wiele do jeden z E do innego zbioru encji. Zbiory słabych encji Relacja odpowiadajca słabemu zbiorowi encji E powinna zawiera wszystkie atrybuty, które wchodz w skład klucza tego zbioru (tj. atrybuty ze zbioru słabego, jak te atrybuty z innych wspomagajcych zbiorów encji) oraz pozostałe atrybuty zbioru słabego. Zwizki oznaczone podwójnym rombem nie tworz oddzielnych relacji. Bazy danych (studia dzienne) 11 Bazy danych (studia dzienne) 12

Trzy podejcia: Reprezentacja zwizków isa w modelu relacyjnym zorientowane obiektowo - kada krotka naley tylko do jednej klasy; tworzenie relacji dla kadej klasy biorc pod uwag wszystkie jej atrybuty styl E/R - relacje s tworzone dla kadej podklasy; zawieraj atrybuty kluczowe i te atrybuty, które s powizane z podklas Wykorzystujc NULL - naley utworzy tylko jedn relacje; encje przyjmuj wartoci NULL dla tych atrybutów, które nie wchodz w skład danego zbioru encji Porównanie metod Zapytania: Koszt zapyta zwizanych z wieloma relacjami jest duy, std podejcie wykorzystujce NULL jest lepsze. Podejscie zorientowane obiektowo jest lepsze dla zapyta typu jaka bro jest wykorzystywana w kreskówkach trwajcych dłuej ni 150 minut Styl E/R jest lepszy dla zapyta typu jakie filmy z roku 1999 trwały dłuej ni 150 minut Preferuje si schematy z moliwie mał liczb relacji (E/R - 1 relacja na 1 zbiór encji; o-o - majc korze i n podklas otrzymujemy 2 n klas) Minimalizacja zajtoci dysku: najlepsza metoda o-o; metoda NULL - w zalenoci od liczby elementów brakujcych moe by lepsza lub gorsza od metody E/R. Bazy danych (studia dzienne) 13 Bazy danych (studia dzienne) 14 SQL: Strukturalny Jzyk Zapyta (ang. Structured Query Language) Zapytania proste Definiowanie danych (DDL:Data Definition Language) Definiowanie zapyta (DQL: Data Query Language) Modyfikowanie danych (DML: Data Modification Language) SELECT [ALL DISTINCT] wyraenie [[AS] alias],... FROM nazwa_tabeli,... [WHERE warunek] [ORDER BY wyraenie ASC DESC],...]; Sterowanie danymi (DCL: Data Control Language) Bazy danych (studia dzienne) 15 Bazy danych (studia dzienne) 16

Zapytania proste SELECT [ALL DISTINCT] wyraenie [[AS] alias],... FROM nazwa_tabeli,... ALL- pokazuje wszystkie wiersze (domylny) DISTINCT - eliminuje powtarzajce si wiersze wyraenie - nazwa kolumny lub wyraenie zawierajce nazwy kolumn, zamiast wyraenia moe wystpi znak '* oznaczajcy wszystkie kolumny alias - nazwa nadana wyraeniu na licie SELECT, moe mie posta identyfikatora prostego (napis złoony z liter, cyfr i znaków podkrelenia) lub złoonego (dowolny napis ograniczony podwójnymi cudzysłowami, np. zawierajcy spacje), Bazy danych (studia dzienne) 17 Zapytania proste [WHERE warunek] Operatory logiczne: =; <; >; >=; <= Operatory SQL: BETWEEN... AND... - midzy dwiema wartociami (włcznie z nimi) IN (lista) - zgodnie z jednym elementów listy LIKE - zgodnie z zadanym wzorcem (interpretacja znaków typu "wildcard": % zastpuje cig znaków, - zastpuje jeden znak) IS NULL - jest wartoci NULL Operator negacji:!=; NOT (NOT nazwa_kolumny =...; NOT BETWEEN; NOT IN; NOT LIKE; IS NOT NULL) Kryteria złoone: AND (i) OR (lub) Bazy danych (studia dzienne) 18 Hierarchia operatorów Operator konkatenacji W wyraeniu operacje s wykonywane zgodnie z priorytetem operatorów, poczwszy od operatorów o najwyszym priorytecie: operatory porównania: =; <; >; >=; <=;!=, BETWEEN...AND; IN; LIKE; IS NULL NOT AND OR (najniszy priorytet) Operator konkatenacji ( ) pozwala na łczenie kolumny z kolumn, z wyraeniem arytmetycznym lub stał wartoci w celu utworzenia wyraenia. Argumenty wystpujce po obu stromach operatora s łczone i tworz pojedyncz kolumn wynikow. Naley uywa nawiasów, jeeli chcemy wymusi odpowiedni kolejno wykonywania operacji. Bazy danych (studia dzienne) 19 Bazy danych (studia dzienne) 20

Złczenia tabel SELECT [ALL DISTINCT] wyraenie [[AS] alias],... FROM tabela_1, tabela_2,..., tabela_n WHERE warunki_łczcy_tabele minimalna liczba łczcych warunków = liczba tabel -1 Bazy danych (studia dzienne) 21