Muzyczna Baza Danych

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

Download "Muzyczna Baza Danych"

Transkrypt

1 Krzysztof Kozłowski, Robert Kumanek, Muzyczna Baza Danych Nasza baza danych jest próbą usystematyzowanego zarchiwizowania branży muzycznej. Muzyczna Baza Danych( dalej jako MBD) ma wiele różnych zastosowań. Dzięki niej, użytkownik może dowiedzieć się kiedy jego ulubiony zespół zagra koncert i ile będzie kosztował bilet wstępu. Z łatwością będzie również mógł sprawdzić aktualną top listę albumów jak i szybko sprawdzić całą dyskografię zespołu. MBD składa się z 10 relacji: album Pierwsza główna tabela, relacja zawierająca informacje o albumie piosenki relacja zawierająca informacje o wnętrzu albumu wytwornia relacja o wytwórniach, które wydały nasze albumy recenzja zbiór recenzji o albumach zespol Druga główna tabela, relacja zawierająca informacje o nazwie zespołu i jego założeniu koncert - relacja stworzona z myślą o fanach, przechowująca informacje o wydarzeniach muzycznych czlonek relacja zawierająca informacje o wnętrzu zespołu instrument relacja o tym kim są dani członkowie w zespole ranking widok wyświetlający top listę albumów ranking_zespolow widok wyświetlający top listę zespołów

2 Kod źródłowy DROP TABLE album CASCADE; DROP TABLE czlonek CASCADE; DROP TABLE zespol CASCADE; DROP TABLE instrument CASCADE; DROP TABLE piosenki CASCADE; DROP TABLE wytwornia CASCADE; DROP TABLE koncert CASCADE; DROP TABLE instrument CASCADE; DROP TABLE recenzja CASCADE; CREATE TABLE album( tytul_albumu TEXT PRIMARY KEY, rok_wydania INTEGER, wytwornia TEXT NOT NULL, nazwa_zespolu TEXT NOT NULL, recenzja BOOLEAN DEFAULT FALSE CREATE TABLE recenzja( tresc TEXT PRIMARY KEY, imie_autora TEXT NOT NULL, nazwisko_autora TEXT NOT NULL, ocena_autora INTEGER, tytul_albumu TEXT ALTER TABLE recenzja ADD FOREIGN KEY (tytul_albumu) REFERENCES album(tytul_albumu) ON UPDATE CASCADE ON DELETE CASCADE; CREATE TABLE zespol( nazwa_zespolu TEXT PRIMARY KEY, rok_zalozenia INTEGER ALTER TABLE album ADD FOREIGN KEY(nazwa_zespolu) REFERENCES zespol(nazwa_zespolu) ON UPDATE CASCADE ON DELETE CASCADE; CREATE TABLE czlonek( imie TEXT NOT NULL, nazwisko TEXT NOT NULL, pseudo TEXT, nazwa_zespolu TEXT NOT NULL, PRIMARY KEY(imie, nazwisko) ALTER TABLE czlonek ADD FOREIGN KEY(nazwa_zespolu) REFERENCES zespol(nazwa_zespolu) ON UPDATE CASCADE ON DELETE CASCADE;

3 CREATE TABLE piosenki( tytul_albumu TEXT NOT NULL, tytul_piosenki TEXT NOT NULL, nr_w_albumie INTEGER NOT NULL, ocena INTEGER, gatunek TEXT, PRIMARY KEY(tytul_albumu,tytul_piosenki) ALTER TABLE piosenki ADD FOREIGN KEY(tytul_albumu) REFERENCES album(tytul_albumu) ON UPDATE CASCADE ON DELETE CASCADE; CREATE TABLE wytwornia( nazwa TEXT PRIMARY KEY, kraj TEXT, miasto TEXT, kod_pocztowy TEXT ALTER TABLE wytwornia ADD CHECK(kod_pocztowy::text ~'^[0-9][2]-[0-9][3]$'::text ALTER TABLE album ADD FOREIGN KEY(wytwornia) REFERENCES wytwornia(nazwa) ON UPDATE CASCADE ON DELETE CASCADE; CREATE TABLE instrument( instrument TEXT NOT NULL, imie TEXT NOT NULL, nazwisko TEXT NOT NULL ALTER TABLE instrument ADD FOREIGN KEY(imie,nazwisko) REFERENCES czlonek(imie,nazwisko) ON UPDATE CASCADE ON DELETE CASCADE; CREATE TABLE koncert( nazwa_zespolu TEXT NOT NULL, data_ DATE, nazwa_wydarzenia TEXT, miejsce TEXT, cena INTEGER, PRIMARY KEY(nazwa_wydarzenia,data_) ALTER TABLE koncert ADD CHECK (cena > 0 ALTER TABLE koncert ADD FOREIGN KEY(nazwa_zespolu) REFERENCES zespol(nazwa_zespolu) ON UPDATE CASCADE ON DELETE CASCADE;

4 CREATE OR REPLACE FUNCTION srednia_zespolu(nazwa TEXT) RETURNS DECIMAL(4,2) AS $$ DECLARE r RECORD; suma DECIMAL(4,2 ilosc DECIMAL(4,2 suma=0; ilosc=0; FOR r IN SELECT * FROM album WHERE nazwa_zespolu=nazwa LOOP suma= suma + srednia_albumu(r.tytul_albumu ilosc=ilosc+1; END LOOP; suma = suma/ilosc; RETURN suma; CREATE OR REPLACE FUNCTION srednia_albumu(nazwa TEXT) RETURNS DECIMAL(4,2) AS $$ DECLARE r RECORD; suma DECIMAL(4,2 ilosc DECIMAL(4,2 suma=0; ilosc=0; FOR r IN SELECT * FROM piosenki WHERE piosenki.tytul_albumu=nazwa LOOP suma=suma+r.ocena; ilosc=r.nr_w_albumie; END LOOP; suma= suma/ilosc; RETURN suma; --wedlug sredniej albumu CREATE VIEW ranking AS SELECT album.tytul_albumu, srednia_albumu(tytul_albumu) FROM album ORDER BY srednia_albumu(tytul_albumu) DESC; CREATE OR REPLACE VIEW ranking_zespolow AS SELECT DISTINCT album.nazwa_zespolu, srednia_zespolu(nazwa_zespolu) FROM album ORDER BY srednia_zespolu(nazwa_zespolu) DESC;

5 CREATE OR REPLACE FUNCTION plyty_wydane(nazwa TEXT) RETURNS TABLE(nazwa_plyty TEXT, rok INTEGER) AS $$ RETURN query SELECT album.tytul_albumu, album.rok_wydania FROM album WHERE nazwa=album.nazwa_zespolu; RETURN; CREATE OR REPLACE FUNCTION piosenki_zespolu(nazwa TEXT) RETURNS TABLE(nazwa_plyty TEXT) AS $$ RETURN query SELECT piosenki.tytul_piosenki FROM piosenki,album WHERE album.tytul_albumu=piosenki.tytul_albumu AND nazwa=album.nazwa_zespolu; RETURN; --najblizsze koncerty zespolu CREATE OR REPLACE FUNCTION koncerty_zespolu(nazwa TEXT) RETURNS TABLE(data_ DATE,nazwa_wydarzenia TEXT,miejsce TEXT,cena INTEGER) AS $$ RETURN query SELECT koncert.data_,koncert.nazwa_wydarzenia,koncert.miejsce,koncert.cena FROM koncert WHERE koncert.nazwa_zespolu=nazwa; --wyswietla czlonkow zespolu CREATE OR REPLACE FUNCTION czlonkowie_zespolu(nazwa TEXT) RETURNS TABLE(imie_ TEXT,nazwisko_ TEXT, pseudonim_1 TEXT, instrument_1 TEXT) AS $$ RETURN query SELECT czlonek.imie,czlonek.nazwisko,czlonek.pseudo,instrument.instrument FROM czlonek,instrument WHERE czlonek.imie=instrument.imie AND czlonek.nazwisko=instrument.nazwisko AND czlonek.nazwa_zespolu=nazwa; --nie moze byc dwoch koncertow jednego dnia w innych miejscach CREATE OR REPLACE FUNCTION dwa_koncerty_jeden_dzien() RETURNS TRIGGER AS $$ IF(SELECT nazwa_zespolu FROM koncert WHERE NEW.data_=koncert.data_ AND NEW.miejsce!=koncert.miejsce) IS NOT NULL THEN RAISE EXCEPTION 'Zespol nie moze grac tego samego dnia w dwoch roznych miejscach!'; END IF; RETURN NEW;

6 CREATE TRIGGER dwa_koncerty BEFORE INSERT OR UPDATE ON koncert FOR EACH ROW EXECUTE PROCEDURE dwa_koncerty_jeden_dzien( --nie moze byc dwoch utworow o tych samych numerach na jednym albumie CREATE OR REPLACE FUNCTION jeden_numer_album() RETURNS TRIGGER AS $$ IF(SELECT piosenki.tytul_piosenki FROM piosenki WHERE NEW.nr_w_albumie=piosenki.nr_w_albumie AND NEW.tytul_albumu=piosenki.tytul_albumu) THEN RAISE EXCEPTION 'Na tym albumie juz jest piosenka od tym numerze!'; END IF; RETURN NEW; --albumy musza byc wydawane chronologicznie CREATE TRIGGER jeden_numer_w_albumie BEFORE INSERT OR UPDATE ON piosenki FOR EACH ROW EXECUTE PROCEDURE jeden_numer_album( CREATE OR REPLACE FUNCTION chronologia_albumu() RETURNS TRIGGER AS $$ IF(SELECT nazwa_zespolu FROM album WHERE (NEW.rok_wydania<album.rok_wydania) AND NEW.nazwa_zespolu=album.nazwa_zespolu) THEN RAISE EXCEPTION 'Albumy mogą być dodawane chronologicznie!'; END IF; RETURN NEW; CREATE TRIGGER chronologia_albumu_ BEFORE INSERT OR UPDATE ON album FOR EACH ROW EXECUTE PROCEDURE chronologia_albumu( INSERT INTO wytwornia VALUES('Parlophone','Niemcy','',NULL INSERT INTO wytwornia VALUES('EMI','Anglia','Londyn',NULL INSERT INTO wytwornia VALUES('BMK','USA','Waszyngton',NULL INSERT INTO wytwornia VALUES('Giant Records','Polska','Katowice',NULL INSERT INTO wytwornia VALUES('Columbia Records','USA','Miami',NULL INSERT INTO wytwornia VALUES('Epic Records','USA','Miami',NULL INSERT INTO zespol VALUES('The Beatles',1960 INSERT INTO zespol VALUES('Bisz',2001 INSERT INTO zespol VALUES('Paktofonika',1998 INSERT INTO zespol VALUES('Nneka',2009 INSERT INTO zespol VALUES('Outlawz',NULL INSERT INTO zespol VALUES('The Clash',1977 INSERT INTO zespol VALUES('Miles Davis Quartet',1964 INSERT INTO zespol VALUES('Abradab',1996

7 INSERT INTO album VALUES('Revolver',1966,'Parlophone','The Beatles',TRUE INSERT INTO album VALUES('Fandago',1993,'BMK','Bisz',NULL INSERT INTO album VALUES('Kinematografia',1993,'Giant Records','Paktofonika',NULL INSERT INTO album VALUES('Archiwum Kinematografii',1996,'Giant Records','Paktofonika',NULL INSERT INTO album VALUES('Soul is Heavy',2001,'Giant Records','Nneka',NULL INSERT INTO album VALUES('All eyez on me',1993,'giant Records','Outlawz',NULL INSERT INTO album VALUES('Still I Rise',1997,'Epic Records','Outlawz',NULL INSERT INTO album VALUES('London Calling',1979,'Epic Records','The Clash',NULL INSERT INTO album VALUES('Kind of Blue',1979,'Columbia Records','Miles Davis Quartet',NULL INSERT INTO album VALUES('Czerwony Album',2002,'Giant Records','Abradab',NULL INSERT INTO album VALUES('Panato',1994,'BMK','Bisz',NULL INSERT INTO album VALUES('Let It Be',1970,'EMI','The Beatles',NULL INSERT INTO czlonek VALUES('Robert','Napisko','Abradab','Abradab' INSERT INTO czlonek VALUES('Miles','Davis','Gringo','Miles Davis Quartet' INSERT INTO czlonek VALUES('Michal','Urbaniak','Urbanator','Miles Davis Quartet' INSERT INTO czlonek VALUES('Mike','Kennedy',NULL,'Miles Davis Quartet' INSERT INTO czlonek VALUES('Sammy','Lebowsky',NULL,'Miles Davis Quartet' INSERT INTO czlonek VALUES('Patson','Marlsow','Marlboro','The Clash' INSERT INTO czlonek VALUES('Michael','Fins','Finito','The Clash' INSERT INTO czlonek VALUES('Frank','Gibson','Mel','The Clash' INSERT INTO czlonek VALUES('John','Lennon',NULL,'The Beatles' INSERT INTO czlonek VALUES('Paul','McCartney',NULL,'The Beatles' INSERT INTO czlonek VALUES('George','Harrison',NULL,'The Beatles' INSERT INTO czlonek VALUES('Ringo','Starr',NULL,'The Beatles' INSERT INTO czlonek VALUES('Jaroslaw','Jaroszewski','Bisz','The Beatles' INSERT INTO czlonek VALUES('Piotr','Luszcz','Magik','Paktofonika' INSERT INTO czlonek VALUES('Wojciech','Alszer','Fokus','Paktofonika' INSERT INTO czlonek VALUES('Sebastian','Salbert','Rahim','Paktofonika' INSERT INTO czlonek VALUES('Nneka','Egbuna','Nneka','Nneka' INSERT INTO czlonek VALUES('Tupac','Shakur','Tupac','Outlawz' INSERT INTO czlonek VALUES('Mario','Beninson','50 cent','outlawz' INSERT INTO piosenki VALUES('All eyez on me','me and my mom',1,2,'reagge' INSERT INTO piosenki VALUES('All eyez on me','fristajlo',2,9,'pop' INSERT INTO piosenki VALUES('All eyez on me','when I saw her',3,4,'pop' INSERT INTO piosenki VALUES('All eyez on me','i want only 3',4,8,'pop' INSERT INTO piosenki VALUES('Still I Rise','Let it on',1,8,'pop' INSERT INTO piosenki VALUES('Still I Rise','Are you ready?',2,3,'pop' INSERT INTO piosenki VALUES('Still I Rise','I',3,2,'pop' INSERT INTO piosenki VALUES('Still I Rise','Me and you',4,3,'pop' INSERT INTO piosenki VALUES('Soul is Heavy','God Of Mercy',1,8,'pop' INSERT INTO piosenki VALUES('Soul is Heavy','Oh wow..',2,2,'soul' INSERT INTO piosenki VALUES('Soul is Heavy','Hey you',3,3,'pop' INSERT INTO piosenki VALUES('Archiwum Kinematografii','Play+Rec',1,7,'rap' INSERT INTO piosenki VALUES('Archiwum Kinematografii','Le sie zmahauem',2,1,'rap' INSERT INTO piosenki VALUES('Archiwum Kinematografii','Mechaniczna pomarancza',3,2,'rap' INSERT INTO piosenki VALUES('Archiwum Kinematografii','A robi sie to tak',4,6,'rap'

8 INSERT INTO piosenki VALUES('Archiwum Kinematografii','Dla pewnego swego',5,4,'rap' INSERT INTO piosenki VALUES('Kinematografia','Priorytety',1,4,'rap' INSERT INTO piosenki VALUES('Kinematografia','Jestem Bogiem',2,5,'rap' INSERT INTO piosenki VALUES('Kinematografia','W moich kregach',3,2,'rap' INSERT INTO piosenki VALUES('Kinematografia','Chwile ulotne',4,6,'rap' INSERT INTO piosenki VALUES('Kinematografia','Gdyby..',5,8,'rap' INSERT INTO piosenki VALUES('Revolver','Taxman',1,5,'rock' INSERT INTO piosenki VALUES('Revolver','Eleanor Rigby',2,7,'rock' INSERT INTO piosenki VALUES('Revolver','Yellow Submarine',3,8,'rock' INSERT INTO piosenki VALUES('Let It Be','Two of Us',1,2,'rock' INSERT INTO piosenki VALUES('Let It Be','Dig a Pony',2,5,'rock' INSERT INTO piosenki VALUES('London Calling','Bankrobber',5,1,'rock' INSERT INTO piosenki VALUES('London Calling','Should I stay or should I go',3,2,'rock' INSERT INTO piosenki VALUES('London Calling','I fought for law',2,7,'rock' INSERT INTO piosenki VALUES('London Calling','London Calling',7,5,'rock' INSERT INTO piosenki VALUES('Kind of Blue','Collour of Blue',3,7,'jazz' INSERT INTO piosenki VALUES('Kind of Blue','So what',4,9,'jazz' INSERT INTO piosenki VALUES('Kind of Blue','Many tears',1,8,'jazz' INSERT INTO piosenki VALUES('Kind of Blue','Me and my mom',2,8,'jazz' INSERT INTO piosenki VALUES('Czerwony Album','Rapowe ziarno',1,6,'rap' INSERT INTO piosenki VALUES('Czerwony Album','Piosenka o G',2,7,'rap' INSERT INTO piosenki VALUES('Czerwony Album','Zapomnialem tytulu',6,8,'rap' INSERT INTO piosenki VALUES('Czerwony Album','Don Kichot',3,6,'rap' INSERT INTO piosenki VALUES('Czerwony Album','Poprawny wokal',4,5,'rap' INSERT INTO piosenki VALUES('Panato','Sam',1,9,'rap' INSERT INTO piosenki VALUES('Panato','Chodnikowy wilk',3,2,'rap' INSERT INTO piosenki VALUES('Panato','Oni maja nas',2,5,'rap' INSERT INTO piosenki VALUES('Panato','Bezpowrotny szlak',4,3,'rap' INSERT INTO piosenki VALUES('Panato','Burza',5,2,'rap' INSERT INTO piosenki VALUES('Fandago','Glos pokolenia',1,2,'rap' INSERT INTO piosenki VALUES('Fandago','Bambus Murzyn',3,3,'reagge' INSERT INTO piosenki VALUES('Fandago','Babylon',6,2,'ska' INSERT INTO piosenki VALUES('Fandago','Tax',2,4,'heavy metal' INSERT INTO koncert VALUES('The Clash',' ','T-rock','Miami',75 INSERT INTO koncert VALUES('Miles Davis Quartet',' ','Jazz Festiwal','New Yourk',50 INSERT INTO koncert VALUES('Bisz',' ','Hip-Hop Fest','Piotrkow Trybunalski',30 INSERT INTO koncert VALUES('The Clash',' ','T-rock','Chicago',75 INSERT INTO koncert VALUES('Abradab',' ','Hip-Hop Fest','Poznan',15 INSERT INTO instrument VALUES('Piotr','Piotr','Luszcz' INSERT INTO instrument VALUES('Paul','Paul','McCartney' INSERT INTO instrument VALUES('Gitara','John','Lennon' INSERT INTO instrument VALUES('Wokal','John','Lennon' INSERT INTO instrument VALUES('Gitara','George','Harrison' INSERT INTO instrument VALUES('Perkusja','Ringo','Starr' INSERT INTO instrument VALUES('Trabka','Miles','Davis' INSERT INTO instrument VALUES('Skrzypce','Michal','Urbaniak' INSERT INTO instrument VALUES('Gitara Basowa','Sammy','Lebowsky' INSERT INTO instrument VALUES('Bongosy','Mike','Kennedy' INSERT INTO instrument VALUES('Gitara','Patson','Marlsow'

9 INSERT INTO recenzja VALUES('The most innovative track on the album is John Lennon "Tomorrow Never Knows." Attempting to distill an LSD trip into a three-minute song, Lennon borrowed lyrics from Timothy Leary version of The Tibetan Book of the Dead, and recorded his vocal to sound like "the Dalai Lama singing from the highest mountaintop." Tape loops, a backward guitar part (Paul McCartney blistering solo on "Taxman," in fact) and a droning tamboura completed the experimental effect, and the song proved hugely influential. For his part, on "Eleanor Rigby" and "For No One," McCartney mastered a strikingly mature form of art song, and Harrison, with "Taxman," "I Want to Tell You" and "Love You To," challenged Lennon-McCartney songwriting dominance.','john','mckandy',10,'revolver' INSERT INTO recenzja VALUES('Paul McCartney, the most devoted of the gang to the notion of the Beatles (Ringo Starr called him the "Beatleaholic"), thought that the group needed a special project to bring it together. Another White Album-style scenario, with the songwriters in the band working alone in separate studios, enlisting each other to serve as a de facto backup band, was bound to fail. Too much good will and trust had been lost. They needed something big they could all submit to. Several ideas were proposed, most involving a return of some kind to live performance: perhaps a live album of new songs or a huge show in a remote place; maybe the band would charter an ocean liner and make an album on it. Ultimately, it was decided that the band would be filmed on a soundstage rehearsing for a show and developing material for a new album-- a document of the Beatles at work. The theme for the project would be back-to-basics, a return of the group as a performing unit, sans overdubs, emphasizing their inherent musicality. Working title: Get Back.','Stephen','Walken',7,'Let It Be'

10 Dodawanie albumu Po dodaniu Wyzwalacz chronologia_albumu - próba wprowadzenia krotki jednego zespołu i jego albumu z rokiem wydania wcześniejszego niż poprzednie albumy tego wykonawcy.

11 Wyzwalacz jeden_numer_album próba wprowadzenia piosenki z konkretnym numerem 2 do albumu, w którym już jest inna piosenka o tym numerze Widok Rankingzespolow Na podstawie ocen z piosenek oblicza ocenę albumu, a po tym oblicza ocenę zespołu na podstawie jego ocen z albumów.

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL, Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających

Bardziej szczegółowo

Hurtownia Świętego Mikołaja projekt bazy danych

Hurtownia Świętego Mikołaja projekt bazy danych Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek

Bardziej szczegółowo

BAZA DANYCH SIECI HOTELI

BAZA DANYCH SIECI HOTELI Paulina Gogół s241906 BAZA DANYCH SIECI HOTELI Baza jest częścią systemu zarządzającego pewną siecią hoteli. Składa się z tabeli powiązanych ze sobą różnymi relacjami. Służy ona lepszemu zorganizowaniu

Bardziej szczegółowo

CREATE TABLE autorzy ( id_autora SERIAL PRIMARY KEY, imie TEXT, nazwisko TEXT );

CREATE TABLE autorzy ( id_autora SERIAL PRIMARY KEY, imie TEXT, nazwisko TEXT ); Projekt ilustruje przykładową bazę domowej biblioteczki. Baza ma za zadanie ułatwić skatalogowanie posiadanych książek wraz z podstawowymi informacjami na ich temat. Opis bazy: Książka może mieć wielu

Bardziej szczegółowo

Projekt-bazy danych Poczta

Projekt-bazy danych Poczta Autorzy: Aleksandra Bąk numer indeksu: 233142 Maksym Leś numer indeksu: 233283 Projekt-bazy danych Poczta 1.Opis Nasz projekt dotyczy poczty. Nasza baza danych zawiera informacje odnośnie: listów przechodzących

Bardziej szczegółowo

Baza danych hotel Maciej Gerus 258583

Baza danych hotel Maciej Gerus 258583 Baza danych hotel Maciej Gerus 258583 Baza ta składa się z 7 tabel (jak widać na rysunku) i pozwala wirtualnie zapisywać (oraz analizować) niektóre uproszczone elementy pracy przedsiębiorstwa oferującego

Bardziej szczegółowo

Bartosz Jachnik - Kino

Bartosz Jachnik - Kino Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym

Bardziej szczegółowo

Monika Sychla 241858 Daniel Smolarek 241875. Projekt bazy danych

Monika Sychla 241858 Daniel Smolarek 241875. Projekt bazy danych Monika Sychla 241858 Daniel Smolarek 241875 Projekt bazy danych Naszym zadaniem było zaprojektowanie przykładowej bazy danych, w oparciu o zagadnienia jakie zostały wprowadzone w trakcie kursu z baz danych.

Bardziej szczegółowo

Bazy danych. Projekt prostej biblioteki. 26 stycznia Hubert Anisimowicz,

Bazy danych. Projekt prostej biblioteki. 26 stycznia Hubert Anisimowicz, Bazy danych Projekt prostej biblioteki 26 stycznia 2015 Hubert Anisimowicz, 275859 Spis treści Rozdział 1 Schemat bazy danych... 2 Rozdział 2 Opis bazy danych... 2 Rozdział 3 Skrypt generujący bazę danych...

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

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

Projekt bazy danych. Schemat bazy danych. Opis bazy danych

Projekt bazy danych. Schemat bazy danych. Opis bazy danych Autorzy: Piotr Słoma nr indeksu: 233263 Joanna Kurzyńska nr indeksu: 233254 Agnieszka Szumicka nr indeksu: 233266 Projekt bazy danych Schemat bazy danych Opis bazy danych Nasz projekt przedstawia bazę

Bardziej szczegółowo

SQL :: Data Definition Language

SQL :: Data Definition Language SQL :: Data Definition Language 1. Zaproponuj wydajną strukturę danych tabela) do przechowywania macierzy o dowolnych wymiarach w bazie danych. Propozycja struktury powinna zostać zapisana z wykorzystaniem

Bardziej szczegółowo

Cheatsheet PL/SQL Andrzej Klusiewicz 1/9

Cheatsheet PL/SQL Andrzej Klusiewicz  1/9 Declare y integer; z varchar2(50); d date; null; Declare x integer:=10; null; x integer; x:=10; dbms_output.put_line('hello world'); for x in 1..10 loop Deklaracja 4 zmiennych. Jednej typu rzeczywistego,

Bardziej szczegółowo

PODSTAWY BAZ DANYCH 13. PL/SQL

PODSTAWY BAZ DANYCH 13. PL/SQL PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących

Bardziej szczegółowo

Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)

Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa) Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.

Bardziej szczegółowo

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w

Bardziej szczegółowo

LAB 6 BEGIN TRANSACTION, COMMIT, ROLLBACK, SET TRANSACTION ISOLATION LEVEL,

LAB 6 BEGIN TRANSACTION, COMMIT, ROLLBACK, SET TRANSACTION ISOLATION LEVEL, Informatyka sem. III studia inżynierskie Transport 2018/19 Lab 6 LAB 6 TRANSACTION, COMMIT, ROLLBACK, SET TRANSACTION ISOLATION LEVEL, UPDATE, INSERT INTO, ALTER TABLE, CREATE VIEW, CREATE TRIGGER, FUNCTION,

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

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1 Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane

Bardziej szczegółowo

SQL 4 Structured Query Lenguage

SQL 4 Structured Query Lenguage Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...

Bardziej szczegółowo

Obiektowe bazy danych Ćwiczenia laboratoryjne (?)

Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Tworzenie typów obiektowych 1. Zdefiniuj typ obiektowy reprezentujący SAMOCHODY. Każdy samochód powinien mieć markę, model, liczbę kilometrów oraz datę

Bardziej szczegółowo

E.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze

E.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie

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

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

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

Zaawansowane bazy danych i hurtownie danych semestr I

Zaawansowane bazy danych i hurtownie danych semestr I Podprogramy Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I Procedury do przeprowadzenia akcji Funkcje do obliczania wartości Pakiety do zbierania logicznie

Bardziej szczegółowo

Język PL/SQL Procedury i funkcje składowane

Język PL/SQL Procedury i funkcje składowane Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone

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

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

Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy];

Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy]; Widoki/Perspektywy Podstawy Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy]; Usuwanie widoku DROP VIEW [nazwa_widoku]; Przykład 1 Przykład najprostszego

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

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw

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

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 i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

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

PL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń

PL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń PL/SQL Zaawansowane tematy PL/SQL Piotr Medoń Cele Omówienie transakcji bazodanowych Omówienie obsługi wyjątków Zarządzanie perspektywami Tworzenie i usuwanie sekwencji Budowa wyzwalaczy 2 Transakcje bazodanowe

Bardziej szczegółowo

Bazy danych wykład szósty Więzy i wyzwalacze. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)

Bazy danych wykład szósty Więzy i wyzwalacze. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa) Bazy danych wykład szósty Więzy i wyzwalacze Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa szósty Więzy i wyzwalacze 1 / 35 Wstęp Wiemy jak nakładać pewne ograniczenia (więzy) w

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

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze

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

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

TABUN_CMS. System zarządzania treścią dla dedykowanej grupy użytkowników. Tabun_CMS 2008 Marcin Biegun, Szymon Bąk

TABUN_CMS. System zarządzania treścią dla dedykowanej grupy użytkowników. Tabun_CMS 2008 Marcin Biegun, Szymon Bąk TABUN_CMS System zarządzania treścią dla dedykowanej grupy użytkowników Spis treści TABUN_CMS...1 Informacje wstępne...3 Cele wdrożenia systemu...3 Wykorzystane technologie...3 Ocena działania systemu...3

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

Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki.

Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki. Pakiety Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki. Pakiet składa się ze: specyfikacji (interfejsu) i ciała (implementacji). W specyfikacji mieszczą

Bardziej szczegółowo

LAB 3 (część 1 Projektu)

LAB 3 (część 1 Projektu) Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 3 (część 1 Projektu) Na zajęciach należy zaprojektować schemat bazy danych oraz przygotować dokument zawierający: Temat: Autor: 1. Opis 2.

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

Wyzwalacze (triggery) Przykład

Wyzwalacze (triggery) Przykład Wyzwalacze (triggery) Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę, a następnie trigger związany

Bardziej szczegółowo

Tabele wykorzystywane w przykładach

Tabele wykorzystywane w przykładach Tabele wykorzystywane w przykładach create table departamenty( dep_id serial primary key, nazwa_departamentu text ); Tabele używane w wybranych przkładach create table pracownicy ( emp_id serial primary

Bardziej szczegółowo

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok; Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie

Bardziej szczegółowo

Język zapytań SQL- język relacyjnych baz danych

Język zapytań SQL- język relacyjnych baz danych Język SQL Język zapytań SQL- język relacyjnych baz danych SQL (Structured Query Language),czyli Strukturalny Język Zapytań. SQL jest standardowym językiem do kierowania poleceń do relacyjnej bazy danych

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

DECLARE VARIABLE zmienna1 typ danych; BEGIN

DECLARE VARIABLE zmienna1 typ danych; BEGIN Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;

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

Bazy danych programowanie Wykład dla studentów matematyk

Bazy danych programowanie Wykład dla studentów matematyk Bazy danych programowanie Wykład dla studentów matematyki 23 kwietnia 2017 Funkcje Funkcje definiuje się w Postgresie używajac konstrukcji CREATE FUNCTION nazwa(parametr typ,...) RETURNS typ-wyniku AS

Bardziej szczegółowo

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

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Grupa A (LATARNIE) Imię i nazwisko: Numer albumu: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Nazwisko prowadzącego: 11: 12: Suma: Ocena: Zad. 1 (10 pkt) Dana jest relacja T. Podaj wynik poniższego zapytania (podaj

Bardziej szczegółowo

Składowane procedury i funkcje

Składowane procedury i funkcje Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.

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

Cele. Definiowanie wyzwalaczy

Cele. Definiowanie wyzwalaczy WYZWALACZE Definiowanie wyzwalaczy Cele Wyjaśnić cel istnienia wyzwalaczy Przedyskutować zalety wyzwalaczy Wymienić i opisać cztery typy wyzwalaczy wspieranych przez Adaptive Server Anywhere Opisać dwa

Bardziej szczegółowo

SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1. Fry #65, Zeno #67. like

SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1. Fry #65, Zeno #67. like SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1 I SSW1.1, HFW Fry #65, Zeno #67 Benchmark: Qtr.1 like SSW1.2, HFW Fry #47, Zeno #59 Benchmark: Qtr.1 do SSW1.2, HFW Fry #5, Zeno #4 Benchmark: Qtr.1 to SSW1.2,

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

Ć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

Struktura bazy danych

Struktura bazy danych Procedury składowane, funkcje i wyzwalacze Struktura bazy danych Tabela Oddziały ID Nazwa Adres 10 POZNAN Kwiatowa 3 20 WARSZAWA al. Jerozolimskie 22 30 KRAKOW Planty 14 40 WROCLAW Nad Odra 16 50 GDANSK

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

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

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Robert Respondowski Click here if your download doesn"t start automatically Wojewodztwo Koszalinskie:

Bardziej szczegółowo

Systemowe aspekty baz

Systemowe aspekty baz Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

Baza danych Ogrodu Zoologicznego

Baza danych Ogrodu Zoologicznego Baza danych Ogrodu Zoologicznego Sprawozdanie z realizacji projektu Marcin Gwózdek Spis treści I.Założenia projektowe...3 II.Diagram ERD...4 III.Diagram RSMD...5 IV.Skrypty SQL...7 1.Zoo.tab...7 2.Zoo.ind...9

Bardziej szczegółowo

Bazy danych, 4. wiczenia

Bazy danych, 4. wiczenia Bazy danych, 4. wiczenia 2007-10-23 1 Plan zaj PL/SQL, cz ± II: tabele kursory sªu» ce do zmiany danych, procedury, funkcje, pakiety, wyzwalacze. 2 Tabele Deklaracja TYPE t_tab IS TABLE OF VARCHAR(20)

Bardziej szczegółowo

1. Dodatkowe informacje. 2. Czynnoci wstpne. 3. Zadania

1. Dodatkowe informacje. 2. Czynnoci wstpne. 3. Zadania 1. Dodatkowe informacje 1.1. Kade zdanie SQL musi by zakoczone rednikiem (;). 1.2. Odwołanie do argumentu funkcji w ciele funkcji jest postaci $n, gdzie n jest numerem argumentu. 2. Czynnoci wstpne 2.1.

Bardziej szczegółowo

Język PL/SQL. Rozdział 6. Procedury wyzwalane

Język PL/SQL. Rozdział 6. Procedury wyzwalane Język PL/SQL. Rozdział 6. Procedury wyzwalane Procedury wyzwalane, cele stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie

Bardziej szczegółowo

PL/SQL. Zaawansowane tematy PL/SQL

PL/SQL. Zaawansowane tematy PL/SQL PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD

Bardziej szczegółowo

Systemowe aspekty baz danych

Systemowe aspekty baz danych Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

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

Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition)

Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition) Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Click here if your download doesn"t start automatically Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Zakopane,

Bardziej szczegółowo

Bazy danych 8. Widoki i wyzwalacze. P. F. Góra

Bazy danych 8. Widoki i wyzwalacze. P. F. Góra Bazy danych 8. Widoki i wyzwalacze P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 I. Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela podstawowa

Bardziej szczegółowo

Bazy danych 11. SQL Procedury składowane, kursory i wyzwalacze

Bazy danych 11. SQL Procedury składowane, kursory i wyzwalacze Bazy danych 11. SQL Procedury składowane, kursory i wyzwalacze P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 I. Procedury składowane (stored procedures) Procedury składowane stanowia

Bardziej szczegółowo

Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL

Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL.

Bardziej szczegółowo

CREATE TABLE logika (p BOOLEAN); INSERT INTO logika VALUES(true); INSERT INTO logika VALUES(false); INSERT INTO logika VALUES(NULL);

CREATE TABLE logika (p BOOLEAN); INSERT INTO logika VALUES(true); INSERT INTO logika VALUES(false); INSERT INTO logika VALUES(NULL); 1. Zaªó» tabel logika o trzech atrybutach p,q,r typu BOOLEAN. Uzupeªnij j wszystkimi mo»liwymi waluacjami logiki SQL (oczywi±cie nie rób tego r cznie). Nast pnie przy u»yciu komend SQLa sprawd¹, dla jakich

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

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

Projekt dziennika lekcyjnego

Projekt dziennika lekcyjnego Projekt dziennika lekcyjnego 16 czerwca 2014 [Wpisz tutaj streszczenie dokumentu. Streszczenie jest zazwyczaj krótkim podsumowaniem treści dokumentu. Wpisz tutaj streszczenie dokumentu. Streszczenie jest

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

Procedury wyzwalane. Rozdział 13. Procedury wyzwalane. Cele stosowania procedur wyzwalanych. Definiowanie procedury wyzwalanej DML

Procedury wyzwalane. Rozdział 13. Procedury wyzwalane. Cele stosowania procedur wyzwalanych. Definiowanie procedury wyzwalanej DML Procedury wyzwalane Rozdział 13 Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie

Bardziej szczegółowo

Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z

Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z Tworzenie tabeli Np. create table nazwa_tab( \\stworzenie tabeli Id numer(4) constraint PRAC_PK primary key, \\ustawiamy klucz podst. Nazwisko varchar2(30), \\typ tekstowy 30 znaków Kwota number(10,2)

Bardziej szczegółowo

Bloki anonimowe w PL/SQL

Bloki anonimowe w PL/SQL Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia

Bardziej szczegółowo

Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach

Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach

Bardziej szczegółowo

Procedury i funkcje składowane

Procedury i funkcje składowane Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe

Bardziej szczegółowo

Pakiety podprogramów Dynamiczny SQL

Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)

Bardziej szczegółowo

Wyzwalacze. Anna Fiedorowicz Bazy danych 2

Wyzwalacze. Anna Fiedorowicz Bazy danych 2 Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych

Bardziej szczegółowo

1. Wyzwalacze BD (ang. triggers)

1. Wyzwalacze BD (ang. triggers) 1. Wyzwalacze BD (ang. triggers) Wyzwalacz bazy danych jest procedurą składowaną w bazie powiązaną z jedną konkretną tablicą. Z pojedynczą tablicą może być związane wiele wyzwalaczy, natomiast pojedynczy

Bardziej szczegółowo

Materiały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne

Materiały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne Materiały dostępne są na stronie: Materiały Technologie baz danych aragorn.pb.bialystok.pl/~gkret Wykład 5: Kursory jawne. Podprogramy. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka

Bardziej szczegółowo

Politechnika Gdańska, międzywydziałowy kierunek INŻYNIERIA BIOMEDYCZNA. Instrukcja do laboratorium z przedmiotu: Bazy danych. Laboratorium nr 4.

Politechnika Gdańska, międzywydziałowy kierunek INŻYNIERIA BIOMEDYCZNA. Instrukcja do laboratorium z przedmiotu: Bazy danych. Laboratorium nr 4. Instrukcja do laboratorium z przedmiotu: Bazy danych Laboratorium nr 4. Funkcje własne, procedury wyzwalane i przetwarzanie transakcyjne Opracował A. Bujnowski 2010-04-08 Projekt Przygotowanie i realizacja

Bardziej szczegółowo

Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe

Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe -- Definicje relacji i utworzenie stanu początkowego dla ćwiczeń z synchronizacji transakcji DROP TABLE Konta cascade constraints; DROP TABLE

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

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20 Plan wykładu BAZY DANYCH II WYKŁAD 9 Dynamiczny SQL, NDS, EXECUTE IMMEDIATE, Pakiet DBMS_SQL, Obiekty w PL/SQL, Tworzenie, wywoływanie, dziedziczenie, etc. dr inż. Agnieszka Bołtuć Dynamiczny SQL Pozwala

Bardziej szczegółowo

Stargard Szczecinski i okolice (Polish Edition)

Stargard Szczecinski i okolice (Polish Edition) Stargard Szczecinski i okolice (Polish Edition) Janusz Leszek Jurkiewicz Click here if your download doesn"t start automatically Stargard Szczecinski i okolice (Polish Edition) Janusz Leszek Jurkiewicz

Bardziej szczegółowo