SQL w praktyce. Miłej i owocnej nauki!!!

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

Download "SQL w praktyce. Miłej i owocnej nauki!!!"

Transkrypt

1 SQL w praktyce Niniejsza praca objęta jest prawami autorskimi. Nielegalne jest kopiowanie żadnej częsci tej pracy w żadnej postaci. Niezgodne z prawem tym bardziej jest udostępnianie innym tej pracy odpłatnie lub nieodpłatnie. Każde naruszenie praw autorskich będzie ścigane z całą surowością prawa. Autor dołożył wszelkich starań, aby zebrany tutaj materiał był poprawny i rzetelny. Niemniej jednak nie daję gwarancji bezbłędności. Autor zrzeka się jakiejkolwiek odpowiedzialności za ewentualne straty spowodowane korzystaniem z zamieszczonych poniżej informacji. Korzystanie z niniejszej pracy jest akceptacją powyższej formuły. Miłej i owocnej nauki!!! SPIS TREŚCI 1. SQL wstępne informacje 2. DDL tworzenie,modyfikacja i usuwanie tablic, typy danych 3. DML - tworzenie,modyfikacja i usuwanie wierszy 4. DQL wyszukiwanie danych, frazy SELECT, FROM, WHERE 5. Warunki filtrujące 6. Warunki łączące 7. Warunki filtrujące z pytaniami zagnieżdżonymi 8. Funkcje agregujące 9. Grupowanie fraza GROUP BY 10. Filtracja grup fraza HAVING 11. Pytania zagnieżdżone skorelowane z funkcjami agregującymi 12. Porządkowanie wyników fraza ORDER BY 13. Perspektywy (widoki, tablice wirtualne) 14. Ochrona integralności danych 15. Więzy referncyjne 16. Zadania 17. Schemat bazy danych wykorzystany w przykładach

2 1. SQL STRUCTURED QUERY LANGUAGE Warianty języka SQL : - interaktywny - obsadzony (wbudowany) w innych językach o statyczny (instrukcje SQL są kompletne) o dynamiczny (instrukcje sparametryzowane) Podjęzyki : - DDL (Data Definition Language) pozwala na definiowanie tablic - DML (Data Manipulation Language) pozwala na tworzemie, aktualizację wierszy - DQL (Data Query Language) - DCL (Data Control Language) 2. DDL TWORZENIE, MODYFIKACJA I USUWANIE TABLIC, TYPY DANYCH - Tworzenie tablic CREATE TABLE <tablica> (<kolumna><typ>[<ograniczenia>],...,[<więzy integralności>]) - Typy danych: o znakowe CHARACTER(n), CHAR(n) łancuch znaków o stałej długości n CHARACTER VARYING(n), VARCHAR(n) łańcuch znaków o zmiennej długości nie większej od n LONG VARCHAR, LONG łańcuchy nieograniczone ( 2GB ) o numeryczne NUMERIC (p,q) p precyzja, q skala DECIMAL (p,q), DEC(p,q) INETEGER, INT SMALLINT FLOAT (n) REAL DOUBLE PRECISION

3 o o o data, czas DATE - (rrrr,mm,dd) TIME godz,min,sek TIMESTAMP data + godzina INTERVAL różnica dat i czasów łańcuch bitów BIT(n) BIT VARYING (n) inne BOOLEAN BYTE łańcuch 8 bitowy MONEY dopisuje automatycznie symbol waluty - ograniczenia o NOT NULL w kolumnie nie może być pustego elementu o NOT NULL WITH DEFAULT w puste pole automatycznie wprowadzana jest wartość domyślna o UNIQUE Przykład: CREATE TABLE uczniowie (nazwisko CHAR [15]), wzrost INT, waga DEC (5,2)) - Modyfikowanie struktury tablic ALTER TABLE <tablica> ADD <kolumna> <typ> [<ograniczenia>] ALTER TABLE <tablica> DROP <kolumna> ALTER TABLE <tablica> MODIFY <kolumna> <typ> [<ograniczenia>] ALTER TABLE <tablica> RENAME <kolumna> <nowa nazwa> ALTER TABLE <tablica> <więzy integralności> Przykład: ALTER TABLE uczniowie ADD klasa INT

4 - Usuwanie tablic, perspektyw, indeksów DROP TABLE <tablica> DROP VIEV <perspektywa> DROP INDEX <indeks> 3. DML WPROWADZANIE, MODYFIKACJA I USUWANIE WIERSZY - Wprowadzanie wierszy INSERT INTO <tablica> [(<lista kolumn>)] VALUES (<lista wartości> Przykład: INSERT INTO uczniowie VALUES ( NOWAK, 187, 72,5,1) INSERT INTO uczniowie (nazwisko, klasa) VALUES ( KOWALSKI, 1) - Modyfikowanie wierszy UPDATE <tablica> SET <kolumna> = <wyrażenie>[...] [WHERE <warunek>] Przykład: UPDATE uczniowie SET wzrost = wzrost + 2 WHERE nazwisko = KOWALSKI UPDATE uczniowie SET klasa = 4 WHERE klasa = 3

5 - Usuwanie wierszy DELETE FROM <tablica> [ WHERE <warunek>] Przykład: DELETE WHERE klasa = 4 DELETE (powoduje usunięcie całej zawartości tablicy uczniowie) 4. DQL WYSZUKIWANIE DANYCH, FRAZY SELECT, FROM, WHERE SELECT <> FROM <> WHERE <> GROUP BY <> HAVING <> ORDER BY <> UNION <> Fraza SELECT SELECT [ALL DISTINCT] {<lista elementów> *} PRZYKŁAD: SELECT * (wyświetlenie całej zawartości tabeli uczniowie) SELECT nazwisko, klasa (wyświetlenie nazwisk uczniów i klas, do których chodzą) SELECT nazwisko, waga (wzrost 100) AS nadwaga SELECT MAX (wzrost)

6 SELECT DISTINCT klasa Fraza FROM FROM <element> [<alias>],... Fraza WHERE WHERE <warunek> Warunki dzielimy na: - filtrujące - łączące - filtrujące z pytaniami zagnieżdżonymi 5. WARUNKI FILTRUJĄCE Warunki filtrujące zbudowane są z atrybutów (kolumn) jednej tablicy - <kolumna> <operator> <stała> SELECT * WHERE klasa = 3 - <wyrażenie> <operator> <wyrażenie> SELECT * WHERE waga (wzrost 100) > 10 - <wyrażenie> [NOT] BETWEEN <dół> AND <góra> SELECT * WHERE wzrost BETWEEN 175 AND <wyrażenie> [NOT] LIKE <wzorzec tekstowy> Symbole zastępcze: _ - zastępuje jeden znak % - zastępuje ciąg znaków SELECT * WHERE nazwisko LIKE Kowalsk_

7 SELECT * WHERE nazwisko LIKE Kowal% 6. WARUNKI ŁĄCZĄCE PRZYKŁAD 1: SELECT nazwisko, nazwa FROM pracownicy, zespoły WHERE pracownicy.nrz = zespoły. nrz SELECT nazwisko, nazwa FROM pracownicy p, zespoły z WHERE p.nrz = z. nrz Obydwa zapytania dadzą te same wyniki. Zapytanie drugie jest jednak krótsze. PRZYKŁAD 2: SELECT nazwisko FROM pracownicy p, dochody d WHERE p.nrp = d.nrp AND nrz=4 AND kwota > 500 PRZYKŁAD 3: SELECT nazwa FROM zespoły z, pracownicy p, dochody d, tematy t WHERE z.nrz=p.nrz AND p.nrp=d.nrp AND d.nrt=t.nrt AND t.nazwa = Pojekt generatora Wypisuje nazwy zespołów zajmujące się projektem generatora.

8 7. WARUNKI FILTRUJĄCE Z PYTANIAMI ZAGNIEŻDŻONYMI Ogólna postać: SELECT < > FROM < > WHERE <początek warunku> (SELECT < > FROM < > WHERE < >... ) Zastosowanie różnych początków warunków na przykładach <wyrażenie> <operator> Wyszukać nazwisko kierownika Zespołu wdrożeń SELECT nazwisko FROM pracownicy WHERE nrp= (SELECT kierownik FROM zespoły WHERE nazwa = Zespół wdrożeń ) Wyszukać nazwiska pracowników zespołu nr 3, którzy otrzymali premie wyższe niż Jaworski SELECT nazwisko FROM pracownicy WHERE nrz=3 AND premia > (SELECT premia FROM pracownicy WHERE nazwisko = Jaworski <wyrażenie> <operator> [ANY / ALL] Pozwala sprawdzić czy wartość wybrana w pytaniu zewnętrznym spełnia warunek dla jakiejkolwiek / każdej wartości wybranej w pytaniu wewnętrznym. Wyszukać nazwy tematów, dla których były jakieś wypłaty. SELECT nazwa FROM tematy WHERE nrt = ANY (SELECT nrt FROM dochody)

9 Znaleźć nazwiska pracowników, którzy mieli jakieś wypłaty większe niż 1000 SELECT nazwisko FROM pracownicy WHERE nrp = ANY (SELECT nrp FROM dochody WHERE kwota > 1000) Znaleźć uczniów klasy 1 wyższych niż uczniowie klasy 3 SELECT nazwisko, wzrost WHERE klasa=1 AND wzrost > ALL (SELECT wzrost WHERE klasa = 3) <wyrażenie> [NOT] IN Pozwala na sprawdzenie czy wartość wybrana w pytaniu zewnętrznym [nie] należy do zbioru wartości wybranych w pytaniu wewnętrznym Wyszukać nazwiska pracowników, którzy nie brali udziału w realizacji tematu nr 2 SELECT nazwisko FROM pracownicy WHERE nrp NOT IN (SELECT nrp FROM dochody WHERE nrt=2) Wyszukać nazwy zespołów, których pracownicy uczestniczą w temacie Projekt generatora SELECT nazwa FROM zespoly WHERE nrz IN (SELECT nrz FROM pracownicy WHERE nrp IN

10 (SELECT nrp FROM dochody WHERE nrt = (SELECT nrt FROM tematy WHERE nazwa = Projekt generatora ))) <wyrażenie> [NOT] EXISTS Zwraca prawdę [fałsz] gdy zbiór wierszy wybranych w pytaniu wewnętrznym nie jest pusty. Znaleźć nazwy tematów, w których były jakieś wypłaty. SELECT nazwa FROM tematy t WHERE EXISTS (SELECT * FROM dochody d WHERE d.nrt=t.nrt) Wyszukać nazwiska pracowników, którzy nie brali udziału w żadnym temacie. SELECT nazwisko FROM pracownicy p WHERE NOT EXISTS (SELECT * FROM dochody d WHERE p.nrp=d.nrp) Wyszukać nazwiska pracowników, którzy uczestniczyli we wszystkich tematach. SELECT nazwisko FROM pracownicy p WHERE NOT EXISTS (SELECT * FROM tematy t WHERE NOT EXISTS (SELECT * FROM dochody d WHERE d.nrt = t.nrt AND d.nrp = p.nrp)

11 8. FUNKCJE AGREGUJĄCE SUM (<argument>) AVG (<argument>) MAX (<argument>) MIN (<argument>) COUNT (<argument>) Wypisz ilość wierszy tablicy zespoły SELECT COUNT(*) FROM zespoly Znaleźć maksymalną i minimalną wypłatę w ramach tematu nr 6 oraz sumę wypłat w tym temacie. SELECT MAX (kwota), MIN (kwota), SUM (kwota) FROM dochody WHERE nrt=6 Znaleźć maksymalną wypłatę jaką otrzymali pracownicy zespołu wdrożeń w ramach projektu generatora. SELECT MAX (kwota) FROM zespoly z, pracownicy p, dochody d, tematy t WHERE z.nrz = p.nrz AND p.nrp = d.nrp AND d.nrt = t.nrt AND z.nazwa = Zespół wdrożeń AND t.nazwa = Projekt generatora Znaleźć liczbę pracowników otrzymujących wypłaty. SELECT COUNT (*) FROM dochody Jest to rozwiązanie błędne dlatego, że jeden pracownik może mieć wiele wypłat i wszystkie zostaną policzone. Prawidłowe zapytanie wyglądać będzie tak: SELECT COUNT (DISTINCT nrp) FROM dochody

12 9. GRUPOWANIE FRAZA GROUP BY Ogólna postać SELECT <lista kolumn 1> <lista funkcji agregujących> FROM < > WHERE < > GROUP BY <lista kolumn 2> Wyznaczyć liczbę pracowników w poszczególnych zespołach. SELECT nrz, COUNT (*) FROM pracownicy GROUP BY nrz Wyszukać maksymalną kwotę oraz sumę kwot dla poszczególnych zespołów realizujących projekt generatora SELECT z.nazwa, MAX (kwota), SUM (kwota) FROM zespoły z, pracownicy p, dochody d, tematy t WHERE z.nrz = p.nrz AND p.nrp = d.nrp AND d.nrt = t.nrt AND t.nazwa = Projekt generatora GROUP BY z.nazwa Podać nazwiska wszystkich pracowników, sumę ich wypłat i liczbę wykonywanych przez nich tematów SELECT nazwisko, SUM(kwota), COUNT(*) FROM pracownicy p, dochody d WHERE p.nrp = d.nrp GROUP BY nazwisko, p.nrp

13 10. FILTRACJA GRUP FRAZA HAVING Ogólna postać: HAVING <warunek filtrujący> Wyświetl numery zespołów, które mają więcej niż 15 lub mniej niż 5 pracowników. SELECT nrz, COUNT(*) FROM pracownicy GROUP BY nrz HAVING COUNT (*) > 15 OR COUNT (*) < 5 Znaleźć nazwiska pracowników (podać też sumę ich wypłat), którzy zarobili w sumie więcej niż Jaworski SELECT nazwisko, SUM(kwota) FROM pracownicy p1, dochody d1 WHERE p1.nrp = d1.nrp GROUP BY nazwisko, p1.nrp HAVING SUM (kwota) > (SELECT SUM(kwota) FROM pracownicy p2, dochody d2 WHERE p2.nrp = d2.nrp AND nazwisko = JAWORSKI 11. PYTANIA ZAGNIEŻDŻONE SKORELOWANE Z FUNKCJAMI AGREGUJĄCYMI Znaleźć najwyższego ucznia każdej klasy. SELECT klasa, nazwisko, wzrost u1 WHERE wzrost = (SELECT MAX(wzrost) u2 WHERE u2.klasa = u1.klasa

14 Podać numery pracowników, którzy mieli maksymalne wypłaty w poszczególnych tematach. SELECT nrt, nrp, kwota FROM dochody d1 WHERE kwota = (SELECT MAX(kwota) FROM dochody d2 WHERE d1.nrt = d2.nrt) 12. PORZĄDKOWANIE WYNIKÓW FRAZA ORDER BY Ogólna postać: ORDER BY {<wyrażenie> <nr>}[asc DESC] ASC kolejność rosnąca (domyślnie) DESC kolejność malejąca PRZYKŁAD SELECT * FROM pracownicy ORDER BY nrz,nazwisko SELECT nazwisko, waga (wzrost 100), klasa ORDER BY 3, 2 DESC Liczby 3, 2 wskazują odpowiednio na atrybuty (kolumny) klasa i waga (wzrost 100) 13. PERSPEKTYWY (WIDOKI, TABLICE WIRTUALNE) Perspektywą nazywamy konstrukcję widzianą przez użytkownika jako tablicę. Cele tworzenia perspektyw: - uproszczenie zapytań. Gdy baza składa się z wielu tablic, często zdarzają się złożone zapytania dotyczące kilku tablic. - ograniczenie dostępu do tablic. Gdy mamy dużą tablicę, z której korzystają różne grupy użytkowników o ograniczonych prawach do

15 danych, rozwiązaniem jest tworzenie tablicy wirtualnej udostępniającej tylko część danych. TWORZENIE PERSPEKTYW CREATE VIEV <perspektywa> [(<lista kolumn>)] AS <instrukcja SELECT> [WITH CHECK OPTION ] W definicji perspektywy niedopuszczalne są: - złączenia - grupowanie - wyrażenia, funkcje agregujące i DISTINCT na liście frazy SELECT - fraza UNION Jeśli tworzymy perspektywę na innej perspektywie i ma być ona aktualizowalna, to ta poprzednia też musi być modyfikowalna. Dopuszczalne są pytania zagnieżdżone, ale zbudowane na tej samej tablicy co pytanie zewnętrzne. 14. OCHRONA INTEGRALNOŚCI DANYCH Integralność: - semantyczna, związana z znaczeniem danych - transakcji, związana z operacjami na danych Kontrola integralności semantycznej może być realizowana przez: - ograniczenia nakładane na dziedziny atrybutów - więzy referencyjne Ograniczenia dziedziny: CREATE DOMAIN <dizedzina><typ>[<ograniczenie>] PRZYKŁAD: CREATE DOMAIN pieniadze dec (2,2) constraint

16 15. WIĘZY REFERENCYJNE Klucz główny (PRIMARY KEY) kolumna / grupa kolumn których wartości jednoznacznie identyfikują pola tablic. Cechy klucza głównego: - tylko jeden dla danej tablicy - ma wartości unikalne, niepuste (NOT NULL) - zazwyczaj musi istnieć unikalny indeks zdefiniowany na kluczu głównym Cechy kluczy obcych (FOREIGN KEY) - definicja klucza obcego musi odpowiadać definicji klucza głównego w innej tablicy. - niepustej wartości klucza obcego musi odpowiadać istniejąca wartość klucza głównego w tablicy nadrzędnej - dopuszcza się wartości puste kluczy obcych OGRANICZENIA NA USUWANIE DANYCH - restrykcyjne (RESTRICT), usunięcie rekordu nadrzednego jest możliwe, jeśli nie istnieje żaden rekord podrzędny z nim związany. - kaskadowe (CASCADE), usunięcie rekordu nadrzędnego powoduje automatyczne usunięcie wszystkich rekordów podrzędnych z nim związanych. - wstawianie wartości pustych (SET NULL), usunięcie rekordu nadrzędnego powoduje wstawienie rekordów pustych do rekordów podrzędnych z nim związanych w miejsce kluczy obcych. DEFINIOWANIE KLUCZY: PRIMARY KEY <nazwa klucza>(<kolumna>,...) FOREIGN KEY <nazwa klucza>(<kolumna>,...) REFERENCES <tablica nadrzędna> [ ON DELETE RESTRICT ] CASCADE SET NULL lub [ ON UPDATE...]

17 16. ZADANIA ZAD 1. Podac nazwy tematow i numery pracownikow o najwyzszych sumarycznych dochodach w danym temacie. select nrt,nrp from dochody d group by nrp,nrt having sum(kwota) >= all (select sum(kwota) from dochody d1 where d1.nrt=d.nrt group by nrp) order by nrt,nrp; ZAD 2; Podac nazwy tematów dla ktorych srednia pojedynczych zarobkow jest wieksza od najnizszego pojedynczego zarobku w tym temacie pracownika, ktory w tym temacie zarobil w sumie najwiecej. Mozna zalozyc, ze nie ma dwoch pracownikow o tych samych sumarycznych dochodach. select nazwatemat from temat t, dochody d where t.nrt=d.nrt group by t.nrt,nazwatemat having avg(d.kwota) > ( // min zarobek pracownika // select min(kwota) from dochody d1 where d1.nrt=t.nrt and d1.nrp = ( // nr pracownika o najwiekszym sumarycznym zarobku // select nrp from dochody d2 where d2.nrt=t.nrt group by nrp,nrt having sum(kwota) >= all ( // sumaryczne zarobki pracownikow w tym temacie // select sum(kwota) from dochody d1 where d1.nrt=d.nrt group by nrp ) ) );

18 17. SCHEMAT BAZY DANYCH WYKORZYSTANY W PRZYKŁADACH RELACJA ATRYBUT TYP DOCHODY NRT INTEGER KWOTA NRP DECIMAL SMALLINT PRACOWNICY NRP SMALLINT KOBIETA DATA_UR NAZWISKO NRZ CHAR TIMESTMP CHAR SMALLINT TEMAT NAZWATEMAT CHAR DATA_ODB NRT NRPKT TIMESTMP INTEGER SMALLINT ZESPOL NAZWAZESP CHAR NRZ NRPKZ SMALLINT SMALLINT

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

Ję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ół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

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

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

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się

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

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

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

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

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

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Podstawy języka SQL. SQL Structured Query Languagestrukturalny Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych

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

SQL - DDL. 1 Tabele systemowe. 2 Typy danych

SQL - DDL. 1 Tabele systemowe. 2 Typy danych SQL - DDL DDL (ang. data definition language) jest częścią języka zapytań SQL obejmująca tworzenie i zarządzanie (modyfikację, usuwanie i przydzielanie uprawnień) obiektami w bazie danych (tabelami, perspektywami,

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

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

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

Wykład 4. SQL praca z tabelami 1

Wykład 4. SQL praca z tabelami 1 Wykład 4 SQL praca z tabelami 1 Typy danych Typy liczbowe Typy całkowitoliczbowe Integer types - Typ INTEGER; 32-bitowa liczba ze znakiem z zakresu -2 31 do 2 31 1 - Typ SMALLINT; typ całkowity mniejszy

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

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@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ół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

Informatyka (5) SQL. dr inż. Katarzyna Palikowska Katedra Transportu Szynowego p. 4 Hydro

Informatyka (5) SQL. dr inż. Katarzyna Palikowska Katedra Transportu Szynowego p. 4 Hydro Informatyka (5) SQL dr inż. Katarzyna Palikowska Katedra Transportu Szynowego p. 4 Hydro katpalik@pg.gda.pl katarzyna.palikowska@wilis.pg.gda.pl Język zapytań SQL Język deklaratywny (regułowy) - SQL, ProLog,

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

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

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

Wykład 05 Bazy danych

Wykład 05 Bazy danych Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o

Bardziej szczegółowo

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2. Bazy Danych i Systemy informacyjne Wykład 2 Piotr Syga 16.10.2017 Dodawanie, usuwanie i zmienianie rekordów Wstawianie rekordu wstawianie do tabeli INSERT INTO A VALUES ( fioletowy, okrągły, słodko-kwaśny

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

Bazy danych - Materiały do laboratoriów VIII

Bazy danych - Materiały do laboratoriów VIII Bazy danych - Materiały do laboratoriów VIII dr inż. Olga Siedlecka-Lamch Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 23 kwietnia 2011 roku Polecenie COMMIT i ROLLBACK Polecenie

Bardziej szczegółowo

Instrukcja CREATE TABLE

Instrukcja CREATE TABLE Podstawy języka SQL 2 Instrukcja CREATE TABLE CREATE TABLE tabela (pole_1 typ [(rozmiar)] [NOT NULL] [indeks_1] [, pole_2 typ [(rozmiar)] [NOT NULL] [indeks_2] [,...]] [, CONSTRAINT indeks_wielopolowy

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

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1 Tworzenie tabel Tabela podstawowa struktura, na której zbudowana jest relacyjna baza danych. Jest to zbiór kolumn (atrybutów) o ustalonych właściwościach, w których przechowuje się dane. Dane te są reprezentowane

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 7. SQL podstawy

Bazy danych 7. SQL podstawy Bazy danych 7. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 Żaden dostawca nie jest w pełni zgodny

Bardziej szczegółowo

Odnawialne Źródła Energii I rok. Tutorial PostgreSQL

Odnawialne Źródła Energii I rok. Tutorial PostgreSQL Tutorial PostgreSQL 1. Instalacja na własnym komputerze: a. Zainstaluj program ze strony: https://www.postgresql.org/download/ Wersja odpowiednia dla systemu operacyjnego Linux, Mac, Windows Przy pierwszym

Bardziej szczegółowo

Aspekty aktywne baz danych

Aspekty aktywne baz danych Aspekty aktywne baz danych Aktywne aspekty baz danych Baza danych powinna zapewniać pewne własności i niezmienniki; Własności te powinny mogą być zapisane do bazy danych, a baza danych powinna zapewniać

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

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

Widok Connections po utworzeniu połączenia. Obszar roboczy

Widok Connections po utworzeniu połączenia. Obszar roboczy Środowisko pracy 1. Baza danych: Oracle 12c - Serwer ELARA - Konta studenckie, dostęp także spoza uczelni - Konfiguracja: https://e.piotrowska.po.opole.pl/index.php?option=conf 2. Środowisko: SQL Developer

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Bazy danych 10. SQL Widoki

Bazy danych 10. SQL Widoki Bazy danych 10. SQL Widoki P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,

Bardziej szczegółowo

Bazy danych. Polecenia SQL

Bazy danych. Polecenia SQL Bazy danych Baza danych, to miejsce przechowywania danych. Dane w bazie danych są podzielone na tabele. Tabele składają się ze ściśle określonych pól i rekordów. Każde pole w rekordzie ma ściśle ustalony

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

SQL (ang. Structured Query Language)

SQL (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ółowo

Bazy danych 6. Klucze obce. P. F. Góra

Bazy danych 6. Klucze obce. P. F. Góra Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:

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

ACESS- zadania z wykorzystaniem poleceń SQL

ACESS- zadania z wykorzystaniem poleceń SQL ACESS- zadania z wykorzystaniem poleceń SQL Dane są relacje o schematach: Pracownik ( (nr integer, nazwisko text(12), etat text(10), szef integer, pracuje_od date, placa_pod Currency, placa_dod Currency,

Bardziej szczegółowo

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek SELECT SELECT kolumna1, kolumna2,, kolumnan FROM tabela wybrane kolumny SELECT * FROM tabela wszystkie kolumny select * from Orders select CustomerID, CompanyName, Country from Customers WHERE SELECT *

Bardziej szczegółowo

Język SQL, zajęcia nr 2

Język SQL, zajęcia nr 2 Język SQL, zajęcia nr 2 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Funkcja agregująca

Bardziej szczegółowo

040 STRUCTURED QUERY LANGUAGE. Prof. dr hab. Marek Wisła

040 STRUCTURED QUERY LANGUAGE. Prof. dr hab. Marek Wisła 040 STRUCTURED QUERY LANGUAGE Prof. dr hab. Marek Wisła SQL strukturalny język zapytań SQL (Structured Query Language) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych

Bardziej szczegółowo

Wykład 2. SQL 1 Structured Query Lenguage

Wykład 2. SQL 1 Structured Query Lenguage Wykład 2 SQL 1 Structured Query Lenguage SQL (Structured Query Language) Język zapytań do bazy danych. IBM lata osiemdziesiąte. Stosowany w systemach zarządzania bazami danych (DBMS); Oracle, Paradox,Access,

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678'); polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

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

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING ] [ORDER BY ] [ ] instrukcja może

Bardziej szczegółowo

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

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Marek Robak Wprowadzenie do języka SQL na przykładzie baz SQLite Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Tworzenie tabeli Pierwsza tabela W relacyjnych bazach danych jedna

Bardziej szczegółowo

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

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE Wykład 9 Implementacja języka SQL w systemach baz danych Oracle manipulowanie danymi (DML), tworzenie, modyfikowanie i usuwanie obiektów bazy danych: tabel i perspektyw, więzów integralności, komentarzy

Bardziej szczegółowo

Grupowanie i funkcje agregujące

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

Projektowanie systemów baz danych

Projektowanie systemów baz danych Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do

Bardziej szczegółowo

Bazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL

Bazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL Bazy danych 2 Wykład 5 Structured Query Language (SQL) c.d. DDL Dziedzina (DOMAIN) Dziedzina to zdefiniowany przez uŝytkownika zbiór dopuszczalnych wartości definiowany niezaleŝnie od definicji tabel Składnia

Bardziej szczegółowo

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

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa Studia Podyplomowe dla Nauczycieli Bazy danych SQL Języki baz danych Interfejs DBMS składa się

Bardziej szczegółowo

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować: Język SQL (Structured Query Language} służy do manipulowania danymi umieszczonymi w relacyjnych bazach danych. Jest językiem uniwersalnym, dzięki czemu praca na różnych systemach baz danych sprowadza się

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING ] [ORDER BY ] [ ] instrukcja może

Bardziej szczegółowo

kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli

kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli SPOOL moj_plik SPOOL OFF @ moj_ plik edit CREATE TABLE DESCRIBE ALTER TABLE RENAME DROP TABLE CONNECT CONNECT USER_NAME DISCONNECT EXIT zapisuje wszystkie wydane polecenia oraz ich wyniki do pliku moj_plik,

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

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie

Bardziej szczegółowo

Bazy danych Ćwiczenia projektowe

Bazy danych Ćwiczenia projektowe Bazy danych Ćwiczenia projektowe Przygotował: Piotr Hajder Katedra Informatyki Stosowanej i Modelowania Wydział Inżynierii Metali i Informatyki Przemysłowej, AGH Agenda 01. Typy danych 02. Polecenia DDL

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

Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych.

Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych. Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych. 1 polecenie CREATE TABLE CREATE TABLE nazwa_relacji Tworzenie

Bardziej szczegółowo

Typy Oracle atrybutów relacji Typ NUMBER (1)

Typy Oracle atrybutów relacji Typ NUMBER (1) Tworzenie relacji polecenie CREATE TABLE Rozdział 6 Język definiowania danych DDL CREATE TABLE nazwa_relacji (nazwa_atrybutu typ (rozmiar) [DEFAULT wartość_domyślna] [ [CONSTRAINT nazwa_ogr] ograniczenie_atr],

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

Typy Oracle atrybutów relacji Typ NUMBER (1)

Typy Oracle atrybutów relacji Typ NUMBER (1) Tworzenie relacji polecenie CREATE TABLE Rozdział 6 Język definiowania danych DDL CREATE TABLE nazwa_relacji (nazwa_atrybutu typ (rozmiar) [DEFAULT wartość_domyślna] [ [CONSTRAINT nazwa_ogr] ograniczenie_atr],

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

Bazy danych Język SQL część 1 Wykład dla studentów matem

Bazy danych Język SQL część 1 Wykład dla studentów matem Bazy danych Język SQL część 1 Wykład dla studentów matematyki 15 marca 2015 SQL Język wysokiego poziomu do komunikacji z bazami danych (ściślej: z systemami zarzadzania bazami danych) Podajemy co ma być

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

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

Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł! Szkolenie Oracle SQL podstawy Terminy 15 17 lutego 2010 First Minute! 1100zł! Opis szkolenia Baza danych Oracle od dawna cieszy się zasłużona sławą wśród informatyków. Jej wydajność, szybkość działania

Bardziej szczegółowo

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną

Bardziej szczegółowo

Wybór EUROPEAN będzie rozpoznawał dzień przed miesiącem, natomiast US miesiąc przed dniem.

Wybór EUROPEAN będzie rozpoznawał dzień przed miesiącem, natomiast US miesiąc przed dniem. Typy numeryczne Typy daty i czasu. W celu uniknięcia niejasności czy zapis 11-08-2005 oznacza - 11 sierpnia 2005, czy może 8 listopada 2005, należy ustalić sposób interpretacji daty (europejski lub amerykański).

Bardziej szczegółowo

Relacji między tabelami klucze obce. Schemat bazy danych, wczytanej z pliku create_tables.sql. Klucz obcy jako ograniczenie dla kolumny

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

Projektowanie Baz Danych GiG-2-KG Ćw. 5. Podstawy języka SQL

Projektowanie Baz Danych GiG-2-KG Ćw. 5. Podstawy języka SQL Podstawy języka SQL Język SQL (ang. Structured Query Language) jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do systemu zarządzania bazą danych (SZBD). Język SQL jest językiem deklaratywnym.

Bardziej szczegółowo

Bazy Danych. SQL Podstawy języka III: powtórzenie. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Bazy Danych. SQL Podstawy języka III: powtórzenie. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408 Bazy Danych SQL Podstawy języka III: powtórzenie Krzysztof Regulski WIMiIP, KISiM, regulski@agh.edu.pl B5, pok. 408 Modyfikacja schematu relacji Utwórz tabelę wg schematu: CREATE TABLE ODDZIAL ( numer_oddzialu

Bardziej szczegółowo

Bazy danych 5. Samozłaczenie SQL podstawy

Bazy danych 5. Samozłaczenie SQL podstawy Bazy danych 5. Samozłaczenie SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Przykład kolejowy Tworzymy bazę danych zawierajac a (uproszczony) rozkład jazdy pociagów

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

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe SQL dokończenie Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk (Wydział Fizyki) BDiUS w. V Jesień 2016 1 / 39 Data Manipulation Language Zapytania klauzula SELECT Wstawianie

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej

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

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

Instrukcje DML INSERT, UPDATE, DELETE. COPY

Instrukcje DML INSERT, UPDATE, DELETE. COPY Wprowadzenie do DML i DDL 1 Bazy Danych Wykład p.t. Instrukcje DML INSERT, UPDATE, DELETE. COPY Antoni Ligęza ligeza@agh.edu.pl http://galaxy.uci.agh.edu.pl/~ligeza Wykorzystano materiały: http: //www.postgresql.org/docs/8.3/interactive/index.html

Bardziej szczegółowo

SQL/MySQL. Rafał Kern

SQL/MySQL. Rafał Kern SQL/MySQL Rafał Kern 1 SQL (Structured Query Language) Deklaratywny - opisujemy warunki, jakie musi spełniać wynik Służy do zarządzania danymi w relacyjnych bazach danych Składnia/zapytania SQL DML (Data

Bardziej szczegółowo

SIECI KOMPUTEROWE I BAZY DANYCH

SIECI KOMPUTEROWE I BAZY DANYCH KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB1, DB2: TEMAT: Wprowadzenie do SQL. Praca z pojedyncza

Bardziej szczegółowo

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę: Bazy danych. Komunikacja z serwerem Aby połączyć się z serwerem i móc wykonywać czynności związane z obsługą baz, potrzebny jest program klienta. Razem z serwerem MySQL dostępny jest działający w wierszu

Bardziej szczegółowo

Tworzenie baz danych i tabel

Tworzenie baz danych i tabel Tworzenie baz danych i tabel Wprowadzenie SQL (ang. Structured Query Language strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych.

Bardziej szczegółowo

Struktura drzewa w MySQL. Michał Tyszczenko

Struktura drzewa w MySQL. Michał Tyszczenko Struktura drzewa w MySQL Michał Tyszczenko W informatyce drzewa są strukturami danych reprezentującymi drzewa matematyczne. W naturalny sposób reprezentują hierarchię danych toteż głównie do tego celu

Bardziej szczegółowo

Przykładowa baza danych BIBLIOTEKA

Przykładowa baza danych BIBLIOTEKA Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba.

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

CREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

CREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; Zestaw ćwiczeń1 Dzięki DDL (Data Definition Language) można operować na strukturach, w których dane są przechowywane czyli np. dodawać, zmieniać i kasować tabele lub bazy. Najważniejsze polecenia tej grupy

Bardziej szczegółowo

Ćwiczenie 7 - DDL. Relacje i ograniczenia integralnościowe. Ćwiczenie 7 DDL. Wymagania: Bazy Danych

Ćwiczenie 7 - DDL. Relacje i ograniczenia integralnościowe. Ćwiczenie 7 DDL. Wymagania: Bazy Danych Bazy Danych Ćwiczenie 7 - DDL Relacje i ograniczenia integralnościowe. Ćwiczenie 7 DDL Podczas dotychczasowych ćwiczeń z Systemów Baz Danych wykonywaliście Państwo zadania przy wykorzystaniu relacji PRACOWNICY,

Bardziej szczegółowo

Laboratorium Bazy danych SQL 3 1

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