Systemy baz danych. Z. Królikowski.

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

Download "Systemy baz danych. Z. Królikowski."

Transkrypt

1 Systemy baz danych Z. Królikowski

2 Literatura 1. Date C. J., An Introduction to Database System, vol. II, Adison-Wesley Pub. Comp., również WNT W-wa, (seria: Klasyka Informatyki), Elmasri R., Navathe S., Fundamentals of Database Systems, Adison- Wesley Pub. Comp.,(3th Edition), Garcia-Molina H., Ullman J.D., Widom J., Implementacja systemów baz danych, WNT, 2003 (seria: Klasyka Informatyki) 4. Kim W., Modern Database Systems, Addison-Wesley, ACM Press, Ullman J.D., Principles of database and knowledge base systems, Vol. I and II, Computer Science Press, Rockville, Maryland, J.D. Ullman, J. Widom, Podstawowy wykład z systemów baz danych, WNT, W-wa, 2000 (seria: Klasyka Informatyki) 7. R. Wrembel, W. Wieczerzycki, Projektowanie aplikacji baz danych, Wydawnictwo NAKOM, Poznań,

3 Pojęcia podstawowe Baza danych jest abstrakcyjnym informatycznym odzwierciedleniem wybranego fragmentu rzeczywistości, nazywanego miniświatem zmiany w tym świecie są odzwierciedlane w bazie danych Bazą danych nazywamy kolekcję logicznie spójnych, powiązanych ze sobą danych, które są składowane na komputerowym nośniku danych. Baza danych jest projektowana, budowana i wypełniana danymi dla określonych celów ma określoną grupę użytkowników korzystających w określony sposób z zawartej w niej informacji 3

4 Pojęcia podstawowe - cd Użytkownicy bazy danych aktorzy na scenie Analitycy systemowi Projektanci bazy danych Programiści aplikacji Użytkownicy końcowi naiwni użytkownicy dobrze przygotowani użytkownicy Administrator systemu bazy danych 4

5 Pojęcia podstawowe - cd Sposób korzystania z bazy danych przez użytkowników naiwnych Formularze ekranowe 5

6 Pojęcia podstawowe - cd Sposób korzystania z bazy danych przez użytkowników dobrze przygotowanych Język SQL SELECT jakie dane wyszukać FROM w jakiej tabeli są one przechowywane WHERE warunki wyszukiwania 6

7 Pojęcia podstawowe - cd System zarządzania bazą danych (SZBD) Systemem zarządzania bazą danych (SZBD) nazywamy zbiór programów umożliwiających tworzenie i eksploatację bazy danych. SZBD jest oprogramowaniem ogólnego przeznaczenia ułatwiającym procesy definiowania, konstruowania i przetwarzania bazy danych dla różnych aplikacji. 7

8 Pojęcia podstawowe - cd System bazy danych składa się z bazy danych i systemu zarządzania bazą danych. użytkownicy transakcje (zapytania) S Z B D moduł zarządzania transakcjami moduł zarządzania dostępem do danych system bazy danych schemat bazy danych baza danych 8

9 Pojęcia podstawowe - cd Użytkownicy kontaktują się z systemem bazy danych za pośrednictwem tzw. transakcji. Transakcja stanowi elementarną jednostkę pracy, składa się z wielu niepodzielnych akcji, każdej z tych akcji odpowiada jedno odwołanie do SZBD. Transakcja jest atomową jednostką pracy, taką że baza danych jest w stanie spójnym (tj. zgodnym z modelowanym miniświatem) przed i po zakończeniu transakcji. 9

10 Pojęcia podstawowe - cd Baza danych to schemat bazy danych i dane Schemat bazy danych jest opisem struktury (formatu) przechowywanych danych oraz wzajemnych powiązań między nimi Schemat bazy danych jest definiowany w trakcie projektowania bazy danych Graficznie schemat bazy danych jest reprezentowany przez diagram schematu Dane opisują cechy (własności) modelowanych obiektów miniświata. Nie mogą być one jednak właściwie interpretowane bez użycia schematu. Zbiór wartości wszystkich danych w bazie danych nazywamy instancją bazy danych (wystąpieniem lub stanem bazy 10 danych)

11 Pojęcia podstawowe - cd Trzypoziomowa architektura ANSI/SPARC systemu bazy danych Użytkownicy Schemat zewnętrzny... Schemat zewnętrzny Poziom zewnętrzny Poziom logiczny Schemat Poziom koncepcyjny koncepcyjny Schemat wewnętrzny Poziom wewnętrzny Poziom fizyczny Baza danych 11

12 Pojęcia podstawowe - cd Trzypoziomowa architektura ANSI/SPARC cd. Poziom wewnętrzny schemat wewnętrzny Opisuje fizyczną organizację bazy danych schemat wewnętrzny stosuje fizyczny model danych i opisuje ścieżki dostępu do danych oraz fizyczną organizację danych Poziom koncepcyjny (pojęciowy) schemat koncepcyjny Opisuje strukturę bazy danych z punktu widzenia globalnego użytkownika Poziom zewnętrzny schematy zewnętrzne Każdy schemat zewnętrzny opisuje bazę danych z punktu widzenia jednej grupy użytkowników 12

13 Pojęcia podstawowe - cd Trzypoziomowa architektura ANSI/SPARC cd. Własności systemu bazy danych wynikające z tej architektury: niezależność aplikacji i danych abstrakcyjna reprezentacja danych różnorodność sposobów widzenia danych fizyczna i logiczna niezależność danych 13

14 Pojęcia podstawowe - cd Fundamentalną cechą systemów baz danych jest zapewnienie wyższego poziomu abstrakcji widzenia danych przez użytkowników, dzięki przesłonięciu szczegółów dotyczących fizycznej organizacji tych danych. Jak to osiągnąć? Modele danych Model danych zbiór pojęć stosowanych do opisu struktury bazy danych - struktura ta obejmuje: typy danych, związki pomiędzy danymi i ograniczenia nałożone na dane; zbiór operacji służących do definiowania, wyszukiwania i uaktualniania bazy danych 14

15 Pojęcia podstawowe - cd Kategorie modeli danych: Pojęciowe modele danych Implementacyjne modele danych Model ER UML... Relacyjny Obiektowy Przestrzenny... Fizyczne modele danych Tworzone przez projektanta i administratora 15

16 Pojęcia podstawowe - cd Użytkownik (projektant) bazy danych ma do dyspozycji język dostępu do danych (SQL), składający się z 4 zintegrowanych modułów: Język definiowania danych (ang. Data Definition Language DDL), który umożliwia definiowanie struktury danych przechowywanych w bazie danych, a więc tworzenie schematu (implementacyjnego); Język manipulowania danymi (ang. Data Manipulation Language DML), który umożliwia wypełnianie bazy nowymi danymi, ich aktualizację i usuwanie; Język sterowania danymi (ang. Data Control Language DCL), który umożliwia użytkownikowi bazy danych sterowanie jego transakcjami, np. ich wycofywanie i zatwierdzanie; Język zapytań (ang. Query Language), który umożliwia pobieranie z bazy danych informacji zgodnych z wyspecyfikowanymi warunkami. 16

17 Relacyjny model danych Tadeusz Morzy, Zbyszko Królikowski

18 Model danych Struktury danych JAN TADEUSZ MACIEJ JANINA KUBA JÓZEF JAN NOWAK KOWALSKI NOWAK RZEPA TARZAN MALINIAK NOWAK Ograniczenia integralnościowe Operacje JANINA KUBA RZEPA TARZAN -5 31! 18

19 Struktury danych Baza danych jest zbiorem relacji (tablic) Relacja, oznaczana dalej R, jest podstawową formą organizacji danych w bazie danych. Przykładowe rodzaje danych: Nazwisko, Imię, Wiek, Pensja itp. - w teorii relacyjnych baz danych rodzaj danych nazywa się atrybutem i jest oznaczany A j. Z każdym atrybutem jest związany zbiór wartości - Zbiór wszystkich możliwych wartości atrybutu A j jest nazywany domeną i oznaczany dom(a j ). Domena D jest zbiorem wartości atomowych i jest definiowana przez podanie typu danych, które mogą przyjmować wartości danych danej domeny Schemat relacji R, oznaczony przez R(A 1, A 2,..., A n ), składa się z nazwy relacji R oraz listy nazw atrybutów A 1, A 2,..., A n Pracownicy (Nazwisko, Imię, Wiek, Pensja) 19

20 Struktury danych Dla danego schematu relacji ciąg wartości jego atrybutów nazywa się krotką i oznacza przez t. <Kowalski, Jan, 35, 2200> Formalnie: dla danego schematu relacji S(A 1,...,A n ) krotką nazywa się ciąg wartości <a 1,...,a n > takich, że a 1 dom(a 1 ),..., a n dom(a n ). Pojedyncza krotka t jest uporządkowaną listą n wartości t=<a 1, a 2,..., a n >, gdzie a i, 1<i<n, jest elementem dom(a i ) lub specjalną wartością pustą (null value) 20

21 Struktury danych Relacją R określoną na danym schemacie relacji nazywa się skończony zbiór krotek. Formalnie R(A 1,...,A n ) = { < a 1,...,a n >: a 1 dom(a 1 ),..., a n dom(a n ) }, gdzie R(A 1,...,A n ) jest relacją określoną na schemacie relacji S(A 1,...,A n ). Atrybut A j relacji R i będziemy dalej oznaczać R i.a. j Liczbę atrybutów występujących w schemacie relacji nazywamy krotnością relacji. 21

22 Struktury danych Relacja jest zbiorem krotek (k-wartości), które są listami wartości. konta ROR ,57 zł zł 22

23 Alternatywna definicja relacji Wyświetlana relacja ma postać tablicy: krotki są wierszami tej tablicy. Nagłówki kolumn są atrybutami STUDENCI Nr indeksu Nazwisko Imię Typ uczeln i Kowalski Jan P krotka Malinowski Zenon U relacja atrybut 23

24 Baza danych Baza danych = zbiór relacji Schemat bazy danych = zbiór schematów relacji Relacja = zbiór krotek Schemat relacji = zbiór {atrybut, typ danej, [ograniczenia integralnościowe]} Krotka = lista atomowych wartości 24

25 Charakterystyka relacji Każda relacja charakteryzuje się następującymi własnościami: wszystkie jej krotki są różne, jej atrybuty są różne, kolejność krotek nie ma znaczenia, kolejność atrybutów nie ma znaczenia, wartości atrybutów są atomowe lub puste. 25

26 Ograniczenia integralnościowe Ograniczenia kojarzone z obiektami bazy danych, nazywamy ograniczeniami (więzami) integralnościowymi (ang. integrity constraints) Ograniczenia integralnościowe są predykatami, które powinny być spełnione przez określony podzbiór danych z bazy Jeśli odpowiednie ograniczenia są spełnione, oznacza to, że określona grupa informacji znajduje się w stanie spójnym. System zarządzania bazą danych musi czuwać nad tym, by po każdej modyfikacji zawartości bazy danych były nadal spełnione więzy integralności 26

27 Ograniczenia integralnościowe Ograniczenie domeny atrybutu Zbiór wartości domeny atrybutu może być zawężony przez wyrażenie logiczne do pewnego podzbioru: przedziału lub wyliczeniowej listy wartości Ograniczenie integralnościowe klucza relacji unikalność krotek relacji Relacja jest zbiorem krotek, stąd, z definicji zbioru, wszystkie krotki relacji muszą być unikalne 27

28 Ograniczenia integralnościowe Ograniczenie na unikalność krotek relacji (cd) Każdy podzbiór SK atrybutów relacji R, taki że dla każdych dwóch krotek ze zbioru r(r) zachodzi t1[sk] t2[sk], jest nazywany nadkluczem (ang. super key) relacji R. Każda relacja musi mieć co najmniej jeden klucz cały schemat relacji SK = {STUDENT.NrIndeksu} 28

29 Ograniczenia integralnościowe Ograniczenie na unikalność krotek relacji (cd) Superklucz może posiadać nadmiarowe atrybuty. Kluczem K schematu relacji R nazywamy superklucz schematu R o takiej własności, że usunięcie dowolnego atrybutu A z K powoduje, że K =K-A nie jest już superkluczem. Klucz jest minimalnym superkluczem zachowującym własność unikalność krotek relacji Schemat relacji może posiadać więcej niż jeden klucz 29

30 Ograniczenia integralnościowe Ograniczenie integralności klucza podstawowego Jeden z kluczy relacji może być wyróżniony jako klucz podstawowy jednoznacznie identyfikujący krotki relacji. W związku z tym klucz podstawowy nie może przyjmować wartości pustych Pozostałe klucze schematu relacji nazywamy kluczami wtórnymi lub kandydującymi 30

31 Ograniczenia referencyjne Dane są relacje R1 i R2. Podzbiór FK atrybutów relacji R1 nazywany jest kluczem obcym R1 (ang. foreign key), jeżeli: Atrybuty w FK mają taką samą domenę jak atrybuty klucza podstawowego PK relacji R2 ; Dla każdej krotki t1 relacji R1 istnieje krotka t2 relacji R2, taka że: t1 [FK] = t2 [PK], lub t1 [FK] = null 31

32 Przykład Dane dwie relacje z ograniczeniami referencyjnymi Pracownicy Id P ra c Nazwisko Etat Placa Szef IdZesp 120 Kowals ki Analityk Tarzan Dyre ktor Nowak Re fe re nt J ózie k Kie rownik Nowacki Analityk Bunio S e kre tarka Zespoły IdZe s p Nazwa Lo kalizac ja Budże t 10 Sprzedaż Krucza Badania Piwna

33 Przykład (cd) Wstaw do relacji Pracownicy krotkę: t = <120, 'Malinowski', 'Akwizytor', 500, 100, 10> Zmodyfikuj krotkę relacji Zespoły: t[zespoły.idzesp] = 30 dla t[zespoły.idzesp]=20 Usuń krotkę relacji Pracownicy, taką że: t[nazwisko] = 'Tarzan' 33

34 Relacyjne języki dostępu do danych Algebra relacji, rachunek krotek SQL (Structured Query Language) Quel QBE (Query by Example) - IBM, Oracle - Ingres - IBM 34

35 Standard SQL Początek prac nad standardem języka bazy danych (DBTG CODASYL) Początek prac nad standardem języka relacyjnej bazy danych (SQL) NDL (Network-structured Data Language) SQL86 ANSI SQL86 ISO SQL89 (ISO/ANSI) początek prac nad SQL SQL92 (ISO/ANSI) 1999/2000 SQL 3 SQL 4 35

36 Podstawowe operacje algebry relacji Operacje na zbiorach " UNION, INTERSECTION, SET DIFFERENCE " CARTESIAN PRODUCT, DIVISION Operacje relacyjne (opracowane dla relacyjnego modelu danych) " SELECT, PROJECT, JOIN " OUTER JOIN, GROUP BY 36

37 Podstawowe operacje algebry relacji Operacje algebry relacji działają na jednej lub wielu relacjach, a ich wynikiem jest relacja. Wyróżnia się następujące operacje: selekcji, umożliwiający wybór krotek relacji spełniających określone warunki, projekcji, umożliwiający okrojenie relacji do wybranych atrybutów, połączenia, umożliwiający łączenie krotek wielu relacji, 37

38 Operacja selekcji - SELECT Operacja selekcji umożliwia pobranie krotek relacji spełniających określony warunek. nr_indeksu imię nazwisko typ_ uczelni Celina Arbuz U Anastazja Iksińska U Warunek selekcji Celina Arbuz U Anastazja Iksińska U 38

39 Operacja selekcji - SELECT Przeznaczenie: wyodrębnienie podzbioru krotek relacji, które spełniają warunek selekcji Notacja: σ <warunek selekcji> (<Nazwa relacji>), gdzie warunek selekcji jest zbiorem predykatów postaci: <nazwa atrybutu><operator relacyjny><literał> lub <nazwa atrybutu><operator relacyjny><nazwa atrybutu> połączonych operatorami logicznymi: AND lub OR. Zbiór operatorów relacyjnych zawiera następujące elementy: {=,, <,, >, } 39

40 Operacja selekcji - Przykłady σ IdPrac = 100 (Pracownicy) σ Płaca > 1000 (Pracownicy) σ (IdZesp=10 AND Płaca>1000) OR (IdZesp=20) AND Płaca>800) (Pracownicy) σ Etat= Analityk AND (Płaca>=700 AND Płaca<1200) (Pracownicy) Własności: operacja selekcji jest komutatywna: σ <war1> (σ <war2> (R))=σ <war2> (σ <war1> (R)) 40

41 Operacja selekcji w języku SQL SELECT * FROM studenci WHERE rok_studiów = 4 AND średnia_ocen > 4.5 SELECT * FROM studenci WHERE UPPER(nazwisko) = MORZY OR stypendium < zasiłek SELECT * FROM studenci WHERE (rok_studiów, typ_studiów, średnia) = (3, podyplomowe, 5) 41

42 Operacja projekcji - Project Projekcja umożliwia pobranie wartości wybranych atrybutów z wszystkich krotek relacji. nr_indeksu imię nazwisko typ_ uczelni Celina Arbuz U Anastazja Iksińska U Lista atrybutów Arbuz Iksińska 42

43 Operacja projekcji - Project Przeznaczenie: wyodrębnienie wybranych atrybutów relacji Notacja: π <lista atrybutów> (<Nazwa relacji>), gdzie lista atrybutów jest podzbiorem atrybutów ze schematu relacji Własności: operacja projekcji nie jest komutatywna. Składanie operacji projekcji jest możliwe przy spełnieniu pewnych dodatkowych warunków: π <lista1> (π <lista2> (R))=π <lista1> (R) jeżeli lista2 zawiera wszystkie atrybuty listy1 43

44 Operacja projekcji - Przykłady π Nazwisko, Etat (Pracownicy) π Etat (Pracownicy) π IdPrac, Nazwisko (Pracownicy) 44

45 Operacja projekcji w języku SQL (1) Rozszerzenia języka SQL Operacje na danych: +, -, *, / 1,22 * cena, cena rabat, dochód / 12, Funkcje: arytmetyczne, znakowe, na datach, konwersji, ogólne UPPER(nazwisko), SIN(kąt), LN(podstawa), ROUND(składka, 1), TO_CHAR(data, Day DD-MM-YYYY) 45

46 Usuwanie duplikatów SELECT [DISTINCT ALL]... Przykłady: SELECT adres_miasto FROM studenci SELECT DISTINCT adres_miasto FROM studenci 46

47 Porządkowanie relacji wynikowej ORDER BY wyrażenie1 [ASC DESC],... SELECT nazwisko FROM pracownicy ORDER BY zespół ASC, etat ASC, płaca DESC 47

48 Składanie operacji Sekwencja wielu operacji, w której kolejne operacje są wykonywane na pośrednich wynikach operacji poprzednich, może być zastąpiona pojedynczą operacją złożoną, powstałą przez zagnieżdżenie operacji elementarnych: Przykłady: PracownicyZesp10 σ IdZesp = 10 (Pracownicy) Wynik π IdPrac, Nazwisko (PracownicyZesp10 ) π IdPrac, Nazwisko (σ IdZesp = 10 (Pracownicy)) 48

49 Operacje na zbiorach Kompatybilność relacji Dwie relacje: R(A 1,..., A n ) i S(B 1,...,B n ) są kompatybilne, jeżeli mają ten sam stopień i jeżeli dom(a i ) = dom(b i ) dla 1 i n Operacje na zbiorach Dane są dwie kompatybilne relacje: R(A 1,..., A n ) i S(B 1,...,B n ). Operacje sumy, iloczynu i różnicy relacji R i S są zdefiniowane następująco: 49

50 Operacje na zbiorach Suma: Wynikiem tej operacji, oznaczanej przez R S, jest relacja zawierająca wszystkie krotki, które występują w R i wszystkie krotki, które występują w S, z wyłączeniem duplikatów krotek. Operacja sumy jest operacją komutatywną: R S = S R Iloczyn: Wynikiem tej operacji, oznaczonej przez R S, jest relacja zawierająca krotki występujące zarówno w R i S. Operacja iloczynu jest operacją komutatywną: R S = S R Różnica: Wynikiem tej operacji, oznaczonej przez R- S, jest relacja zawierająca wszystkie krotki, które występują w R i nie występują w S. Operacja różnicy nie jest operacją komutatywną: R - S S - R 50

51 Operacje na zbiorach - Przykłady Uczniowie Imię Nazwis ko Ala Kus ia k Edek Musiał Ada m Zają c Olek Struś Ola Buba Instruktorzy Imię Nazwis ko Jan Kuc Edek Musiał Wacek Misiek Uczniowie Instruktorzy Uczniowie Instruktorzy Imię Nazwis ko Ala Kus ia k Edek Musiał Ada m Zają c Olek Struś Ola Buba Jan Kuc Wacek Misiek Imię Nazwis ko Edek Musiał Uczniowie - Instruktorzy Imię Nazwis ko Ala Kus ia k Ada m Zają c Olek Struś Ola Buba Instruktorzy - Uczniowie Imię Nazwis ko Jan Kuc Wacek Misiek 51

52 Operacje na zbiorach - SQL SELECT nr_konta, saldo FROM filia_a WHERE saldo > UNION SELECT konto_nr, SUM(operacje) FROM filia_b GROUP BY konto_nr SELECT imię, nazwisko, data_urodzenia FROM filia_a INTERSECT SELECT imię, nazwisko, data_urodzenia FROM filia_b SELECT imię, nazwisko, data_urodzenia FROM filia_a EXCEPT SELECT imię, nazwisko, data_urodzenia FROM filia_b 52

53 Iloczyn Kartezjański Iloczyn kartezjański umożliwia konkatenację krotek dwóch (lub więcej) relacji w taki sposób, że każda krotka pierwszej relacji jest łączona z każdą krotką drugiej relacji R 1 A B X R2 a b c A A A a b c B B B a b c 53

54 Iloczyn Kartezjański Dane są dwie relacje: R(A 1,..., A n ) i S(B 1,...,B m ). Wynikiem iloczynu kartezjańskiego relacji R i S, oznaczonym przez R x S, jest relacja Q stopnia n+m i schemacie: Q(A 1,..., A n, B 1,...,B m ). Krotkom w relacji Q odpowiadają wszystkie kombinacje krotek z relacji R i S. Jeżeli relacja R ma n r krotek, a relacja S ma n s krotek, to relacja Q będzie miała n r *n s krotek 54

55 Iloczyn Kartezjański - Przykład Pracownicy Zespoły Imię Ala Edek Ada m Nazwis ko Kus ia k Musiał Zają c Nazwa Lo kalizac ja Reklama Krucza 10 Badania Piotrowo 3A Pracownicy x Zespoły Im ię Nazwisko Nazwa Lokalizacja Ala Kusiak Reklama Krucza 10 Edek Musiał Reklama Krucza 10 Ada m Za ją c Reklama Krucza 10 Ala Kusiak Badania Piotrowo 3A Edek Musiał Badania Piotrowo 3A Ada m Za ją c Badamia Piotrowo 3A 55

56 Operacja połączenia - JOIN Operacja ta polega na konkatenacji krotek dwóch (lub więcej) relacji z zastosowaniem określonego warunku połączenia. Wynikiem połączenia jest podzbiór iloczynu kartezjańskiego relacji. nr_indeksu im ię nazwisko typ_ uczelni Celina A rbuz U A nastazja Iksińska U P P P A typ_ uczelni P U A nazwa P olitechnika Uniwersytet A kademia Celina A nastazja A rbuz Iksińska Uniwersytet Uniwersytet 56

57 Operacja połączenia - JOIN Przeznaczenie: łączenie na podstawie warunku połączeniowego wybranych krotek z dwóch relacji w pojedynczą krotkę Notacja: operacja połączenia relacji R(A 1,..., A n ) i S(B 1,...,B m ), jest oznaczona jako: R <warunek połączeniowy> S gdzie warunek połączeniowy jest zbiorem predykatów połączonych operatorami logicznymi AND. Predykaty są postaci: Ai θ Bj, gdzie Ai i Bj są atrybutami połączeniowymi, i Ai jest atrybutem R, a Bj jest atrybutem S, dom(ai) = dom(bj), i θ jest operatorem relacyjnym ze zbioru { =,, <,, >, }. 57

58 Operacja połączenia - JOIN Ogólna postać operacji połączenia, gdzie jest dowolnym operatorem relacyjnym jest nazywana połączeniem typu THETA (ang. THETA JOIN) Operacja połączenia, dla której θ jest operatorem =, nazywana jest połączeniem równościowym (ang. EQUI JOIN) Operacja połączenia, dla której θ jest operatorem różnym od =, nazywana jest połączeniem nierównościowym (ang. NON-EQUI JOIN) Operacja połączenia równościowego, w której jeden z atrybutów połączeniowych jest usunięty ze schematu relacji wynikowej, jest nazywana połączeniem naturalnym (ang. NATURAL JOIN). Połączenie naturalne jest oznaczane jako: R * S, przy czym wymagane jest, by atrybuty połączeniowe w obu relacjach miały taką samą nazwę 58

59 Operacja połączenia - Przykłady Pracownicy IdPrac Imię Nazwis ko S ze f IdZe s p 100 Jan Miś Piotr Wilk Roman Lis Zespoły IdZe s p Nazwa 10 Reklama 20 Badania Pracownicy Szef=IdPrac Pracownicy IdPrac Imię Nazwis ko S ze f IdZe s p IdPrac Imię Nazwis ko S ze f IdZe s p 110 Piotr Wilk Jan Miś Roman Lis Jan Miś 10 Pracownicy * Zespoły Id P ra c Im ię Nazwisko Szef IdZesp Nazwa 100 Jan Miś 10 Reklama 110 Piotr Wilk Reklama 120 Roman Lis Badania 59

60 Operacja połączenia zewnętrznego OUTER JOIN Przeznaczenie: łączenie na podstawie warunku połączeniowego wybranych krotek z dwóch relacji w pojedynczą krotkę; w przypadku gdy danej krotce relacji nie odpowiada żadna krotka drugiej relacji, krotka ta jest łączona z krotką pustą Operacja połączenia zewnętrznego lewostronnego relacji R(A 1,..., A n ) i S(B 1,...,B m ), jest oznaczona jako: R <warunek połączeniowy> S oznacza, że w relacji wynikowej znajdą się krotki odpowiadające wszystkim krotkom relacji R (lewostronnej). 60

61 Operacja połączenia zewnętrznego OUTER JOIN Operacja połączenia zewnętrznego prawostronnego relacji R(A 1,..., A n ) i S(B 1,...,B m ), jest oznaczona jako: R <warunek połączeniowy> S oznacza, że w relacji wynikowej znajdą się krotki odpowiadające wszystkim krotkom relacji S (prawostronnej) 61

62 Operacja połączenia zewnętrznego OUTER JOIN Operacja połączenia zewnętrznego dwustronnego relacji R(A 1,..., A n ) i S(B 1,...,B m ), jest oznaczona jako: R <warunek połączeniowy> S oznacza, że w relacji wynikowej znajdą się krotki odpowiadające wszystkim krotkom relacji R i wszystkim krotkom relacji S 62

63 Operacja połączenia zewnętrznego Przykład Pracownicy IdPrac Imię Nazwis ko S ze f IdZe s p 100 Jan Miś Piotr Wilk Roman Lis Pracownicy <Szef=IdPrac> Pracownicy IdPrac Imię Nazwis ko S ze f IdZe s p IdPrac Imię Nazwis ko S ze f IdZe s p 100 Jan Miś Piotr Wilk Jan Miś Roman Lis Jan Miś 10 63

64 Definiowanie struktur danych SQL - Typy danych Typ Przykład użycia CHARACTER/CHAR Tytuł_filmu CHAR(25) CHAR VARYING/VARCHAR Na zwis ko VARCHAR (30) NATIONAL CHAR/NCHAR Miasto NCHAR (20) NCHAR VARYING Mia s to NCHAR VARYING (20) INTEGER/INT Nr_konta INT NUMERIC (s, p) Saldo NUMERIC (8, 2) DECIMAL (s, p) Cena DECIMAL (7, 2) FLOAT Odległość FLOAT REAL Szerokość REAL DOUBLE P RECIS ION Wie lkość DOUBLE P RECIS ION BIT Fla gi BIT BIT VARYING P ole _fla gi BIT VARYING DATE Da ta _urodze nia DATE TIME P oczą tek_zajęć TIME TIME WITH ZONE Cza s _odlotu TIME WITH ZONE TIMES TAMP S potka nie TIMES TAMP TIMESTAMP WITH ZONE Spotkanie TIMESTAMP WITH ZONE INTERVAL Cza s _pra cy INTERVAL 64

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

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe Relacyjny model danych Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe Charakterystyka baz danych Model danych definiuje struktury danych operacje ograniczenia integralnościowe

Bardziej szczegółowo

Relacyjny model danych

Relacyjny model danych Relacyjny model danych Wykład przygotował: Robert Wrembel BD wykład 2 (1) 1 Plan wykładu Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe BD wykład 2 (2) W ramach drugiego

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

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

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

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

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

Baza danych jest abstrakcyjnym informatycznym odzwierciedleniem. Baza danych jest logicznie spójnym zbiorem danych posiadających

Baza danych jest abstrakcyjnym informatycznym odzwierciedleniem. Baza danych jest logicznie spójnym zbiorem danych posiadających Systemy baz danych Zbyszko Królikowski Instytut Informatyki Politechniki Poznańskiej Literatura: 1. R. Wrembel, W. Wieczerzycki, Projektowanie aplikacji baz danych, Wydawnictwo NAKOM, Poznań, 1997 2. Codd

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność

Bardziej szczegółowo

Relacyjny model danych. Relacyjny model danych

Relacyjny model danych. Relacyjny model danych 1 Plan rozdziału 2 Relacyjny model danych Relacyjny model danych - pojęcia podstawowe Ograniczenia w modelu relacyjnym Algebra relacji - podstawowe operacje projekcja selekcja połączenie operatory mnogościowe

Bardziej szczegółowo

Wprowadzenie do języka SQL

Wprowadzenie do języka SQL Wprowadzenie do języka SQL język dostępu do bazy danych grupy poleceń języka: DQL (ang( ang.. Data Query Language) DML (ang( ang.. Data Manipulation Language) DDL (ang( ang.. Data Definition Language)

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

Przestrzenne bazy danych Podstawy języka SQL

Przestrzenne bazy danych Podstawy języka SQL Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured

Bardziej szczegółowo

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret

Ogó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ół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

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

PRZESTRZENNE 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ół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

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) LITERATURA C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom; Systemy baz danych. Kompletny podręcznik

Bardziej szczegółowo

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

BAZY DANYCH. Wykład 1: Wprowadzenie do baz danych. Marcin Czajkowski. Przygotowanie wykładu: Małgorzata Krętowska BAZY DANYCH Wykład 1: Wprowadzenie do baz danych Marcin Czajkowski Politechnika Białostocka Wydział Informatyki Przygotowanie wykładu: Małgorzata Krętowska Ogólny plan przedmiotu Wykład : Wprowadzenie

Bardziej szczegółowo

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Konstruowanie 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ółowo

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

K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU (pieczęć wydziału) KARTA PRZEDMIOTU 1. Nazwa przedmiotu: BAZY DANYCH 2. Kod przedmiotu: 3. Karta przedmiotu ważna od roku akademickiego: 2014/2015 4. Forma kształcenia: studia pierwszego stopnia 5. Forma

Bardziej szczegółowo

System zarządzania bazą danych SZBD (ang. DBMS -Database Management System)

System zarządzania bazą danych SZBD (ang. DBMS -Database Management System) Podstawowe pojęcia Baza danych Baza danych jest logicznie spójnym zbiorem danych posiadających określone znaczenie. Precyzyjniej będzie jednak powiedzieć, Ŝe baza danych jest informatycznym odwzorowaniem

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

Język SQL. Rozdział 2. Proste zapytania

Język SQL. Rozdział 2. Proste zapytania Język SQL. Rozdział 2. Proste zapytania Polecenie SELECT, klauzula WHERE, operatory SQL, klauzula ORDER BY. 1 Wprowadzenie do języka SQL Język dostępu do bazy danych. Język deklaratywny, zorientowany na

Bardziej szczegółowo

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012 PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS Obowiązuje od roku akademickiego: 2011/2012 Instytut Techniczny Kierunek studiów: Informatyka Kod kierunku: 11.3 Specjalność: Informatyka Stosowana

Bardziej szczegółowo

Podstawowe 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 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ółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy GIS Tworzenie zapytań w bazach danych Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Bardziej szczegółowo

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas)

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Bazy danych podstawowe pojęcia Baza danych jest to zbiór danych zorganizowany zgodnie ze ściśle określonym modelem danych. Model danych to zbiór ścisłych

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

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

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1 Podstawy języka SQL standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi Bazy danych s.5-1 Język SQL SQL (ang. Structured Query Language, strukturalny język zapytań) język

Bardziej szczegółowo

Język SQL. Rozdział 5. Połączenia i operatory zbiorowe

Język SQL. Rozdział 5. Połączenia i operatory zbiorowe Język SQL. Rozdział 5. Połączenia i operatory zbiorowe Iloczyn kartezjański, połączenie równościowe, połączenie nierównościowe, połączenie zwrotne, połączenie zewnętrzne, składnia jawna połączeń, składnia

Bardziej szczegółowo

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

Bazy danych Wykład zerowy. P. F. Góra Bazy danych Wykład zerowy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Patron? Św. Izydor z Sewilli (VI wiek), biskup, patron Internetu (sic!), stworzył pierwszy katalog Copyright c 2011-12 P.

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

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

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

Wykład 6. SQL praca z tabelami 3

Wykład 6. SQL praca z tabelami 3 Wykład 6 SQL praca z tabelami 3 Łączenie wyników zapytań Język SQL zawiera mechanizmy pozwalające na łączenie wyników kilku pytań. Pozwalają na to instrukcje UNION, INTERSECT, EXCEPT o postaci: zapytanie1

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: 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ółowo

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

Diagramy 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ółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy ogólny Rodzaj zajęć: wykład, laboratorium BAZY DANYCH Databases Forma studiów: Stacjonarne

Bardziej szczegółowo

Relacyjne bazy danych

Relacyjne bazy danych Relacyjne bazy danych W roku 1970 dr Edgar Ted Codd z firmy IBM zaprezentował relacyjny model danych. W modelu tym dane miały być przechowywane w prostych plikach liniowych, które to pliki nazywane są

Bardziej szczegółowo

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

77. 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ółowo

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

P o d s t a w y j ę z y k a S Q L P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p

Bardziej szczegółowo

Wykład 3 2014-04-25 12:45 BD-1 W_3

Wykład 3 2014-04-25 12:45 BD-1 W_3 Wykład 3 SQL - język operacji na bazach danych Schemat przykładowej bazy danych Uczelnia Skrypt SQL - utworzenie bazy Uczelnia Polecenia selekcji i projekcji Interakcyjny dostęp do bazy danych 2014-04-25

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

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

Wstę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ółowo

Rozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1

Rozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1 Rozdział 1 Wprowadzenie do baz danych 1 Model danych 2 Funkcje systemu zarządzania bazą danych Wymagania spójność bazy danych po awarii trwałość danych wielodostęp poufność danych wydajność rozproszenie

Bardziej szczegółowo

Bazy danych. Dr Henryk Telega. BD 10/11 Wykład 1 1

Bazy danych. Dr Henryk Telega. BD 10/11 Wykład 1 1 Bazy danych Dr Henryk Telega BD 10/11 Wykład 1 1 R. Elmasri, S.B. Navathe Wprowadzenie do systemów baz danych, wydanie 1, Helion 2005, seria Kanon Informatyki tłumaczenie wydania 4: R. Elmasri, S.B. Navathe

Bardziej szczegółowo

Agnieszka Ptaszek Michał Chojecki

Agnieszka Ptaszek Michał Chojecki Agnieszka Ptaszek Michał Chojecki Krótka historia Twórcą teorii relacyjnych baz danych jest Edgar Frank Codd. Postulaty te zostały opublikowane po raz pierwszy w 1970 roku w pracy A Relational Model of

Bardziej szczegółowo

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

BAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski BAZY DANYCH wprowadzenie do języka SQL Opracował: dr inż. Piotr Suchomski Wprowadzenie Język SQL używany jest do pracy z relacyjną bazą danych. Jest to język nieproceduralny, należący do grupy języków

Bardziej szczegółowo

mail: strona: konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową)

mail: strona:   konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową) 1 Organizacyjne Kwestie organizacyjne Kontakt: mail: olga.siedlecka@icis.pcz.pl strona: http://icis.pcz.pl/~olga konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową) Zaliczenie wykładu -

Bardziej szczegółowo

1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9.

1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9. Plan wykładu Spis treści 1 DML - zapytania, część II 1 1.1 Grupowanie................................... 1 1.2 Operatory zbiorowe............................... 5 2 DML - modyfikacja 7 3 DCL - sterowanie

Bardziej szczegółowo

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

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)

Bardziej szczegółowo

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

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. 1 Perspektywa Perspektywa (ang. view) jest strukturą

Bardziej szczegółowo

Wykład 5. SQL praca z tabelami 2

Wykład 5. SQL praca z tabelami 2 Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,

Bardziej szczegółowo

Post-relacyjne bazy danych

Post-relacyjne bazy danych Post-relacyjne bazy danych Historia języka SQL 1. Sequel-XRM 2. Sequel/2 SQL 3. ANSI SQL 1986 (ISO 1987) 4. X/Open (UNIX), SAA(IBM) 5. ANSI SQL 1989 6. ANSI/ISO SQL 92 Entry level 7. ANSI SQL 92 (SQL 2)

Bardziej szczegółowo

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

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN Integralność danych Wersje języka SQL Klauzula SELECT i JOIN Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Integralność danych Aspekty integralności

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Bazy danych Database Kierunek: Rodzaj przedmiotu: obieralny Rodzaj zajęć: wykład, laboratorium Matematyka Poziom kwalifikacji: I stopnia Liczba godzin/tydzień: 2W, 2L Semestr: III Liczba

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Wstęp do problematyki baz danych Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. I Jesień 2014 1 / 17 Plan wykładu 1 Bazy danych 1 Motywacja

Bardziej szczegółowo

BAZY DANYCH Podstawowe pojęcia

BAZY DANYCH Podstawowe pojęcia BAZY DANYCH Podstawowe pojęcia Wykład 1 dr Lidia Stępień Akademia im. Jana Długosza w Częstochowie L. Stępień (AJD) BD 1 / 26 Literatura 1. L. Banachowski, Bazy danych. Tworzenie aplikacji, Akademicka

Bardziej szczegółowo

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

Wstęp Wprowadzenie do BD Podstawy SQL. Bazy Danych i Systemy informacyjne Wykład 1. Piotr Syga Bazy Danych i Systemy informacyjne Wykład 1 Piotr Syga 09.10.2017 Ogólny zarys wykładu Podstawowe zapytania SQL Tworzenie i modyfikacja baz danych Elementy dynamiczne, backup, replikacja, transakcje Algebra

Bardziej szczegółowo

LITERATURA. Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000

LITERATURA. Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000 LITERATURA Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000 Systemy baz danych. Pełny wykład H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom;WNT Warszawa 2006 Wprowadzenie do systemów

Bardziej szczegółowo

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. 1 Perspektywa Perspektywa (ang. view) jest strukturą logiczną

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 5 Strukturalny język zapytań (SQL - Structured Query Language) Algebraiczny rodowód podstawowe działania w przykładach Bazy danych.

Bardziej szczegółowo

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: BAZY DANYCH 2. Kod przedmiotu: Bda 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Automatyka i Robotyka 5. Specjalność: Informatyka Stosowana

Bardziej szczegółowo

SQL Structured Query Language

SQL Structured Query Language Terminy, określenia: Relacja tabela Krotka wiersz ( rekord ) Atrybut kolumna (pole ) Stopień relacji liczba atrybutów Klucz główny relacji jednoznaczny identyfikator krotki Dziedzina zbiór dopuszczalnych

Bardziej szczegółowo

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji

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

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

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

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji 6. Język SQL Język SQL (Structured Query Language): - język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji - stworzony w IBM w latach 70-tych DML (Data Manipulation

Bardziej szczegółowo

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/

Paweł 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ółowo

Wykład 8. SQL praca z tabelami 5

Wykł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ółowo

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15 Sylabus do programu kształcenia obowiązującego od roku akademickiego 204/5 Nazwa Bazy danych Nazwa jednostki prowadzącej przedmiot Wydział Matematyczno - Przyrodniczy Kod Studia Kierunek studiów Poziom

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Modelowanie hierarchicznych struktur w relacyjnych bazach danych Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego

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

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

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

Technologie baz danych

Technologie 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ółowo

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

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion Autor: Joanna Karwowska SQL zapewnia obsługę: zapytań - wyszukiwanie danych w bazie, operowania danymi - wstawianie, modyfikowanie

Bardziej szczegółowo

Temporalne bazy danych

Temporalne bazy danych Temporalne bazy danych Temporalne bazy danych wspierają powiązanie elementów temporalnych ze zdarzeniami lub stanami reprezentowanymi w bazie danych. Zastosowania: archiwa elektroniczne medyczne bazy danych

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

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

BAZY DANYCH algebra relacyjna. Opracował: dr inż. Piotr Suchomski BAZY DANYCH algebra relacyjna Opracował: dr inż. Piotr Suchomski Wprowadzenie Algebra relacyjna składa się z prostych, ale mocnych mechanizmów tworzenia nowych relacji na podstawie danych relacji. Hdy

Bardziej szczegółowo

KARTA PRZEDMIOTU 1,5 1,5

KARTA PRZEDMIOTU 1,5 1,5 WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI Zał. nr 4 do ZW 33/01 KARTA PRZEDMIOTU Nazwa w języku polskim BAZY DANYCH Nazwa w języku angielskim DATABASE SYSTEMS Kierunek studiów (jeśli dotyczy): INŻYNIERIA

Bardziej szczegółowo

RBD Relacyjne Bazy Danych

RBD Relacyjne Bazy Danych Wykład 7 RBD Relacyjne Bazy Danych Bazy Danych - A. Dawid 2011 1 Selekcja σ C (R) W wyniku zastosowania operatora selekcji do relacji R powstaje nowa relacja T do której należy pewien podzbiór krotek relacji

Bardziej szczegółowo

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

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

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

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Zasady 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ół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

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language stworzony na początku lat 70 ubiegłego wieku w IBM przez Donalda Messerly'ego, Donalda Chamberlina oraz Raymonda Boyce'a pod nazwą SEQUEL pierwszy SZBD System R utworzony

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

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne) KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Bazy danych 2 Nazwa modułu w języku angielskim Databases 2 Obowiązuje od roku akademickiego 2012/2013 A. USYTUOWANIE MODUŁU W SYSTEMIE STUDIÓW Kierunek

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. Wykłady dla studentów Wydziału Matematyki i Informatyki UAM. Dr inż. Anna Stachowiak B4-27

BAZY DANYCH. Wykłady dla studentów Wydziału Matematyki i Informatyki UAM. Dr inż. Anna Stachowiak B4-27 BAZY DANYCH Wykłady dla studentów Wydziału Matematyki i Informatyki UAM Dr inż. Anna Stachowiak aniap@amu.edu.pl B4-27 Wprowadzenie Plan wykładu Informacje organizacyjne Przegląd poruszanych zagadnień

Bardziej szczegółowo

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language stworzony na początku lat 70 ubiegłego wieku w IBM przez Donalda Messerly'ego, Donalda Chamberlina oraz Raymonda Boyce'a pod nazwą SEQUEL pierwszy SZBD System R utworzony

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski. Relacyjne bazy danych. są podstawą zachodniej cywilizacji

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski. Relacyjne bazy danych. są podstawą zachodniej cywilizacji Relacyjne bazy danych Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski 1 Model danych Relacyjne bazy danych są podstawą zachodniej cywilizacji 3 Model danych: Aspekt strukturalny: Zbiór struktur

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umoŝliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Język SQL podstawy zapytań

Język SQL podstawy zapytań Język SQL podstawy zapytań 1 Plan prezentacji 1. Krótka historia języka SQL 2. Cechy języka SQL 3. Przykładowa baza danych 4. Podstawy zapytań - operacje na modelu relacyjnym 5. Polecenie SELECT zapytania

Bardziej szczegółowo

Bazy danych. Informacje podstawowe

Bazy danych. Informacje podstawowe Bazy danych Zagadnienia Podstawy relacyjnych baz danych SQL Języki manipulowania w relacjach Aspekty aktywne baz danych Aspekty systemowe baz danych Projektowanie baz danych Zależności funkcyjne i postacie

Bardziej szczegółowo