From 2f2c01f6bf1da4f696a134b4bfe9fb4515421c12 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Thu, 21 Mar 2019 12:38:18 +0100 Subject: [PATCH 01/19] Update proj2/xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 44 +++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 2126a4a..405afe7 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -1 +1,45 @@ -- TODO +-- Authors: Simon Kobyda(xkobyd00), Michal Zelenak(xzelen24) +-- IDS VUT FIT + + +--DATE,TIME,PK +--insert data into table +--creating connections and number them + +--TEST IF THERE IS SOME TABLE and if do this ˇ + /*drop table multikino;*/ + +--create table trzbyFilmu(datum Date, hodnota integer); # Bartík vravel že nemusíme vytvárať že sa to bude dať vyfiltrovať z tej databazy +--create table trzbymultikina # Rovnako ako trzbyFilmu + + + +--Start of the Script + +--Creating tables +create table multikino(town varchar2(180), street varchar2(180), nameCin varchar2(50)); +create table zanerFilmu(nazov varchar2(20), popis varchar2(300)); +create table Film(rok number(4,0), klucslova varchar2(200), reziser varchar2(70), trvanie number(3,1), krajinaPovodu varchar2(50), vekoveObmedzenie number(2,0)); +create table Zamestnanec (meno varchar2(120), priezvisko varchar2(120), Adresa varchar2(80), cisloUctu varchar2(24),hodinovaMzda number(4,3),pozicia varchar2(50)); +create table Projekcia (titulky char(1),jazyk varchar2(80),datum date,d3 char(1));--,casZacatia time - mal by stacit date? +create table PremietaciaSala(kapacita number(4,0), projektor varchar2(50)); +create table Rezervacia(cas Date,cena Number(4,3)); +create table Sedadlo(sedadlo number(4,0),poradie number(4,0),obsadenost char(1)); +create table Klient(Heslo varchar(50),vek number(3,0),status varchar(10)); +create table Vstupenka(casPredaja date,cena number(4,3), statusZakaznika varchar(10)); + + + +--Destroying Tables + +drop table Vstupenka; +drop table Klient; +drop table Sedadlo; +drop table Rezervacia; +drop table PremietaciaSala; +drop table Projekcia; +drop table Zamestnanec; +drop table Film; +drop table zanerFilmu; +drop table multikino; \ No newline at end of file From 203ac16e9101f0274e65c6a2778ec900c3d8671a Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sat, 23 Mar 2019 12:48:44 +0100 Subject: [PATCH 02/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 186 +++++++++++++++++++++++++++++++----- 1 file changed, 161 insertions(+), 25 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 405afe7..b9e979b 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -1,45 +1,181 @@ --- TODO --- Authors: Simon Kobyda(xkobyd00), Michal Zelenak(xzelen24) --- IDS VUT FIT - - --DATE,TIME,PK ---insert data into table +--TEST IF THERE IS SOME TABLE +--pull datas into table --creating connections and number them +--hotovo Zamestnanec, +/* +drop table multikino; +drop table Zamestnanec; +/**/ + +BEGIN + EXECUTE immediate 'DROP TABLE Zamestnanec CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE ZanerFilmu CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Film CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Projekcia CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE PremietaciaSala CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Rezervacia CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Sedadlo CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Klient CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Vstupenka CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Multikino CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ + + + + +create table Zamestnanec +( +rodne_cislo char(11), +meno varchar2(120), +priezvisko varchar2(120), +Adresa varchar2(80), +cisloUctu char(24), +hodinovaMzda number(4,3), +pozicia varchar2(50), +Zam varchar2(50), +Constraint PK_zamestnanec PRIMARY KEY (rodne_cislo), +Constraint pozicia_enum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')) +); + + +create table multikino +( +nameCin varchar2(50) not null, +town varchar2(180) NOT NULL, +street varchar2(180), +zamestn char(11), +constraint PK_multikino PRIMARY KEY (nameCin), +constraint FK_zamestMultikina FOREIGN KEY + (zamestn) REFERENCES Zamestnanec +); ---TEST IF THERE IS SOME TABLE and if do this ˇ - /*drop table multikino;*/ ---create table trzbyFilmu(datum Date, hodnota integer); # Bartík vravel že nemusíme vytvárať že sa to bude dať vyfiltrovať z tej databazy ---create table trzbymultikina # Rovnako ako trzbyFilmu +create table zanerFilmu +(nazov varchar2(20) NOT NULL, +popis varchar2(300), +film number, +Constraint PK_zanerFilmu PRIMARY KEY (nazov) +); ---Start of the Script +create table Film +( +FilmID INT GENERATED AS IDENTITY PRIMARY KEY, +rok number(4,0), +klucslova varchar2(200), +reziser varchar2(70), +trvanie number(3,1), +krajinaPovodu varchar2(50), +vekoveObmedzenie number(2,0), +nazovFilmu varchar2(20) NOT NULL, +zaner varchar2(20), +CONSTRAINT FK_Film_zaner FOREIGn KEY + (zaner) REFERENCES zanerFilmu +); ---Creating tables -create table multikino(town varchar2(180), street varchar2(180), nameCin varchar2(50)); -create table zanerFilmu(nazov varchar2(20), popis varchar2(300)); -create table Film(rok number(4,0), klucslova varchar2(200), reziser varchar2(70), trvanie number(3,1), krajinaPovodu varchar2(50), vekoveObmedzenie number(2,0)); -create table Zamestnanec (meno varchar2(120), priezvisko varchar2(120), Adresa varchar2(80), cisloUctu varchar2(24),hodinovaMzda number(4,3),pozicia varchar2(50)); -create table Projekcia (titulky char(1),jazyk varchar2(80),datum date,d3 char(1));--,casZacatia time - mal by stacit date? -create table PremietaciaSala(kapacita number(4,0), projektor varchar2(50)); -create table Rezervacia(cas Date,cena Number(4,3)); -create table Sedadlo(sedadlo number(4,0),poradie number(4,0),obsadenost char(1)); -create table Klient(Heslo varchar(50),vek number(3,0),status varchar(10)); -create table Vstupenka(casPredaja date,cena number(4,3), statusZakaznika varchar(10)); +create table Projekcia +(projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, +titulky char(1), +jazyk varchar2(80), +datum date,d3 char(1) +);--,casZacatia time - mal by stacit date? +create table PremietaciaSala +(PremietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, +kapacita number(4,0), +projektor varchar2(50) +); ---Destroying Tables +create table Rezervacia +(RezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY, +cas Date, +cena Number(4,3)); +create table Sedadlo +(SedadloID INT GENERATED AS IDENTITY PRIMARY KEY, +sedadlo number(4,0), +poradie number(4,0), +obsadenost char(1) +); + +create table Klient +(KlientID INT GENERATED AS IDENTITY PRIMARY KEY, +Heslo varchar(50), +vek number(3,0), +status varchar(10) +); + +create table Vstupenka +(VstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, +casPredaja date, +cena number(4,3), +statusZakaznika varchar(10) +); + + +--chybajuce väzby co treba urobit alter po tabulkach +/** +multikino prevadzkuje + +*/ +alter table Zamestnanec +ADD constraint FK_nameOfCinema + Foreign key (Zam) + REFERENCES Multikino + on delete cascade; + +/* +--drop table trzbyFilmu; drop table Vstupenka; drop table Klient; drop table Sedadlo; drop table Rezervacia; drop table PremietaciaSala; drop table Projekcia; -drop table Zamestnanec; + drop table Film; drop table zanerFilmu; -drop table multikino; \ No newline at end of file +drop table multikino; +drop table Zamestnanec; +*/ \ No newline at end of file From 738db55153dcfa15bfa9d48c1d8caae7fe8949ca Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sat, 23 Mar 2019 17:35:32 +0100 Subject: [PATCH 03/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 44 +++++++++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 7 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index b9e979b..5f1950d 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -1,5 +1,4 @@ --DATE,TIME,PK ---TEST IF THERE IS SOME TABLE --pull datas into table --creating connections and number them --hotovo Zamestnanec, @@ -83,6 +82,7 @@ nameCin varchar2(50) not null, town varchar2(180) NOT NULL, street varchar2(180), zamestn char(11), +Sala number, constraint PK_multikino PRIMARY KEY (nameCin), constraint FK_zamestMultikina FOREIGN KEY (zamestn) REFERENCES Zamestnanec @@ -99,16 +99,16 @@ Constraint PK_zanerFilmu PRIMARY KEY (nazov) ); create table Film -( -FilmID INT GENERATED AS IDENTITY PRIMARY KEY, +(FilmID INT GENERATED AS IDENTITY PRIMARY KEY, +nazovFilmu varchar2(20) NOT NULL, rok number(4,0), klucslova varchar2(200), reziser varchar2(70), trvanie number(3,1), krajinaPovodu varchar2(50), vekoveObmedzenie number(2,0), -nazovFilmu varchar2(20) NOT NULL, zaner varchar2(20), +projekciaFilmu number, CONSTRAINT FK_Film_zaner FOREIGn KEY (zaner) REFERENCES zanerFilmu ); @@ -118,13 +118,24 @@ create table Projekcia (projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, titulky char(1), jazyk varchar2(80), -datum date,d3 char(1) -);--,casZacatia time - mal by stacit date? +datum date, +d3 char(1), +FilmProjekcia number, +Constraint FK_film Foreign key + (FilmProjekcia) references Film +); +--,casZacatia time - mal by stacit date? create table PremietaciaSala (PremietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, kapacita number(4,0), -projektor varchar2(50) +projektor varchar2(50), +SalaProjekcia number, +multikinoSala varchar2(50), +constraint FK_SalaProjekcia Foreign key + (SalaProjekcia) references Projekcia, +constraint FK_SalaMultikino Foreign key + (multikinoSala) references Multikino ); create table Rezervacia @@ -165,6 +176,25 @@ ADD constraint FK_nameOfCinema REFERENCES Multikino on delete cascade; +alter table zanerFilmu +ADD constraint FK_zanerFilmuFilm + Foreign key (film) + REFERENCES Film + on delete cascade; + +alter table Film +ADD constraint FK_Projekcia_Film + Foreign key (ProjekciaFilmu) + REFERENCES Film + on delete cascade; + +alter table Multikino +ADD constraint FK_Multikino_Sala + Foreign key (Sala) + REFERENCES PremietaciaSala + on delete cascade; + + /* --drop table trzbyFilmu; drop table Vstupenka; From a0719a0fc5c94912a052d75f957d114deae1e571 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sat, 23 Mar 2019 23:27:50 +0100 Subject: [PATCH 04/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 137 ++++++++++++++++++++---------------- 1 file changed, 76 insertions(+), 61 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 5f1950d..d1dc575 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -1,11 +1,10 @@ ---DATE,TIME,PK +--Authors: Simon Kobyda, Michal Zelenak +-- VUT FIT 2019 IDS + +--TO DO +--TIME, + --pull datas into table ---creating connections and number them ---hotovo Zamestnanec, -/* -drop table multikino; -drop table Zamestnanec; -/**/ BEGIN EXECUTE immediate 'DROP TABLE Zamestnanec CASCADE CONSTRAINTS'; @@ -63,34 +62,30 @@ END; create table Zamestnanec ( -rodne_cislo char(11), -meno varchar2(120), -priezvisko varchar2(120), -Adresa varchar2(80), +rodne_cislo char(11) primary key not null, +meno varchar2(120) not null, +priezvisko varchar2(120) not null, +Adresa varchar2(80) not null, cisloUctu char(24), hodinovaMzda number(4,3), -pozicia varchar2(50), -Zam varchar2(50), -Constraint PK_zamestnanec PRIMARY KEY (rodne_cislo), +pozicia varchar2(50) not null, Constraint pozicia_enum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')) ); create table multikino ( -nameCin varchar2(50) not null, -town varchar2(180) NOT NULL, -street varchar2(180), -zamestn char(11), -Sala number, -constraint PK_multikino PRIMARY KEY (nameCin), +nameCin varchar2(50) Primary key not null, +mesto varchar2(180) NOT NULL, +ulica varchar2(180), +zamestnanci char(11) Not null, +MultikinoSala number not null, constraint FK_zamestMultikina FOREIGN KEY - (zamestn) REFERENCES Zamestnanec + (zamestnanci) REFERENCES Zamestnanec ); - create table zanerFilmu (nazov varchar2(20) NOT NULL, popis varchar2(300), @@ -99,18 +94,18 @@ Constraint PK_zanerFilmu PRIMARY KEY (nazov) ); create table Film -(FilmID INT GENERATED AS IDENTITY PRIMARY KEY, +(FilmID INT GENERATED AS IDENTITY PRIMARY KEY not null, nazovFilmu varchar2(20) NOT NULL, rok number(4,0), klucslova varchar2(200), reziser varchar2(70), trvanie number(3,1), krajinaPovodu varchar2(50), -vekoveObmedzenie number(2,0), -zaner varchar2(20), -projekciaFilmu number, +vekoveObmedzenie number(2,0) not null, +FilmZaner varchar2(20), +FilmProjekcia number, CONSTRAINT FK_Film_zaner FOREIGn KEY - (zaner) REFERENCES zanerFilmu + (FilmZaner) REFERENCES zanerFilmu ); @@ -119,62 +114,59 @@ create table Projekcia titulky char(1), jazyk varchar2(80), datum date, -d3 char(1), -FilmProjekcia number, -Constraint FK_film Foreign key - (FilmProjekcia) references Film +d3 char(1) not null, +ProjekciaRezervacia number, +ProjekciaVstupenka number not null ); --,casZacatia time - mal by stacit date? create table PremietaciaSala (PremietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, kapacita number(4,0), -projektor varchar2(50), +projektor varchar2(50) not null, SalaProjekcia number, -multikinoSala varchar2(50), +SalaSedadlo number not null, constraint FK_SalaProjekcia Foreign key - (SalaProjekcia) references Projekcia, -constraint FK_SalaMultikino Foreign key - (multikinoSala) references Multikino + (SalaProjekcia) references Projekcia ); create table Rezervacia -(RezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY, -cas Date, -cena Number(4,3)); +(RezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY not null, +cas Date not null, +cena Number(4,3) not null +); create table Sedadlo (SedadloID INT GENERATED AS IDENTITY PRIMARY KEY, -sedadlo number(4,0), -poradie number(4,0), -obsadenost char(1) +rad number(4,0) not null, +poradie number(4,0) not null, +obsadenost char(1) not null, +SedadloRezervacia number, +SedadloVstupenka number, +constraint FK_SedadloRezervacia Foreign key + (SedadloRezervacia) references Rezervacia ); create table Klient -(KlientID INT GENERATED AS IDENTITY PRIMARY KEY, -Heslo varchar(50), -vek number(3,0), -status varchar(10) +(KlientID varchar2(50) Primary Key not null, +Heslo varchar2(50) not null, +vek number(3,0) not null, +status varchar2(10) not null, +KlientRezervacia number, +Constraint status_enum CHECK ( status IN('dieťa','študent','dôchodca','dospelý','invalid')), +constraint FK_Klient_Rezervacia Foreign key + (KlientRezervacia) references Rezervacia ); create table Vstupenka (VstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, -casPredaja date, -cena number(4,3), -statusZakaznika varchar(10) +casPredaja date not null, +cena number(4,3) not null, +statusZakaznika varchar2(10) not null ); --chybajuce väzby co treba urobit alter po tabulkach -/** -multikino prevadzkuje - -*/ -alter table Zamestnanec -ADD constraint FK_nameOfCinema - Foreign key (Zam) - REFERENCES Multikino - on delete cascade; alter table zanerFilmu ADD constraint FK_zanerFilmuFilm @@ -184,17 +176,40 @@ ADD constraint FK_zanerFilmuFilm alter table Film ADD constraint FK_Projekcia_Film - Foreign key (ProjekciaFilmu) + Foreign key (FilmProjekcia) REFERENCES Film on delete cascade; alter table Multikino ADD constraint FK_Multikino_Sala - Foreign key (Sala) + Foreign key (MultikinoSala) REFERENCES PremietaciaSala on delete cascade; - +alter table Projekcia +ADD constraint FK_Projekcia_Rezervacia + Foreign key (ProjekciaRezervacia) + REFERENCES Projekcia + on delete cascade; + +alter table Projekcia +ADD constraint FK_Projekcia_Vstupenka + Foreign key (ProjekciaVstupenka) + REFERENCES Vstupenka + on delete cascade; + +alter table PremietaciaSala +ADD constraint FK_Sala_Sedadlo + Foreign key (SalaSedadlo) + references Sedadlo + on delete cascade; + +alter table Sedadlo +ADD constraint FK_Vstupenka_Sedadlo + Foreign key (SedadloVstupenka) + references Vstupenka + on delete cascade; + /* --drop table trzbyFilmu; drop table Vstupenka; From 1d294efd373c700010f4fbef17a5829c842a86fa Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 24 Mar 2019 00:01:07 +0100 Subject: [PATCH 05/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 34 +++++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index d1dc575..9ee02f5 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -82,6 +82,7 @@ zamestnanci char(11) Not null, MultikinoSala number not null, constraint FK_zamestMultikina FOREIGN KEY (zamestnanci) REFERENCES Zamestnanec + on delete cascade ); @@ -90,7 +91,7 @@ create table zanerFilmu (nazov varchar2(20) NOT NULL, popis varchar2(300), film number, -Constraint PK_zanerFilmu PRIMARY KEY (nazov) +Constraint PK_zanerFilmu PRIMARY KEY (nazov) ); create table Film @@ -128,6 +129,7 @@ SalaProjekcia number, SalaSedadlo number not null, constraint FK_SalaProjekcia Foreign key (SalaProjekcia) references Projekcia + on delete cascade ); create table Rezervacia @@ -145,6 +147,7 @@ SedadloRezervacia number, SedadloVstupenka number, constraint FK_SedadloRezervacia Foreign key (SedadloRezervacia) references Rezervacia + on delete cascade ); create table Klient @@ -156,6 +159,7 @@ KlientRezervacia number, Constraint status_enum CHECK ( status IN('dieťa','študent','dôchodca','dospelý','invalid')), constraint FK_Klient_Rezervacia Foreign key (KlientRezervacia) references Rezervacia + on delete cascade ); create table Vstupenka @@ -171,8 +175,7 @@ statusZakaznika varchar2(10) not null alter table zanerFilmu ADD constraint FK_zanerFilmuFilm Foreign key (film) - REFERENCES Film - on delete cascade; + REFERENCES Film; alter table Film ADD constraint FK_Projekcia_Film @@ -195,8 +198,8 @@ ADD constraint FK_Projekcia_Rezervacia alter table Projekcia ADD constraint FK_Projekcia_Vstupenka Foreign key (ProjekciaVstupenka) - REFERENCES Vstupenka - on delete cascade; + REFERENCES Vstupenka; + --vstupenky po zmazani projekcie ostanu kvôli vráteniu peňazí alter table PremietaciaSala ADD constraint FK_Sala_Sedadlo @@ -207,8 +210,25 @@ ADD constraint FK_Sala_Sedadlo alter table Sedadlo ADD constraint FK_Vstupenka_Sedadlo Foreign key (SedadloVstupenka) - references Vstupenka - on delete cascade; + references Vstupenka; + + +----------------------------INSERTION OF THE DATA STARTS HERE----- + +-----------------------------------INSERTION ENDS HERE------------ +--Určenie spravcu databazy +GRANT ALL ON Zamestnanec TO xkobyd00; +GRANT ALL ON Multikino TO xkobyd00; +GRANT ALL ON Rezervacia TO xkobyd00; +GRANT ALL ON ZanerFilmu TO xkobyd00; +GRANT ALL ON Film TO xkobyd00; +GRANT ALL ON Sedadlo TO xkobyd00; +GRANT ALL ON Vstupenka TO xkobyd00; +GRANT ALL ON PremietaciaSala TO xkobyd00; +GRANT ALL ON Projekcia TO xkobyd00; +GRANT ALL ON Klient TO xkobyd00; + +COMMIT; /* --drop table trzbyFilmu; From af24908336d3d086ff5c68098c757f4211ee33d7 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 24 Mar 2019 00:38:41 +0100 Subject: [PATCH 06/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 9ee02f5..2b62d7f 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -59,7 +59,6 @@ END; - create table Zamestnanec ( rodne_cislo char(11) primary key not null, @@ -90,10 +89,12 @@ constraint FK_zamestMultikina FOREIGN KEY create table zanerFilmu (nazov varchar2(20) NOT NULL, popis varchar2(300), -film number, +--film number, Constraint PK_zanerFilmu PRIMARY KEY (nazov) ); + + create table Film (FilmID INT GENERATED AS IDENTITY PRIMARY KEY not null, nazovFilmu varchar2(20) NOT NULL, @@ -104,11 +105,26 @@ trvanie number(3,1), krajinaPovodu varchar2(50), vekoveObmedzenie number(2,0) not null, FilmZaner varchar2(20), -FilmProjekcia number, +FilmProjekcia number +/*CONSTRAINT FK_Film_zaner FOREIGn KEY + (FilmZaner) REFERENCES zanerFilmu*/ +); + +create table zanerFilmu_Film +( +nazovZanru varchar2(20) not null, +FilmID number, CONSTRAINT FK_Film_zaner FOREIGn KEY - (FilmZaner) REFERENCES zanerFilmu + (nazovZanru) REFERENCES zanerFilmu, +CONSTRAINT FK_Film_ID FOREIGn KEY + (FilmID) REFERENCES Film ); +/* +alter table zanerFilmu +ADD constraint FK_zanerFilmuFilm + Foreign key (film) + REFERENCES Film;*/ create table Projekcia (projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, @@ -172,10 +188,7 @@ statusZakaznika varchar2(10) not null --chybajuce väzby co treba urobit alter po tabulkach -alter table zanerFilmu -ADD constraint FK_zanerFilmuFilm - Foreign key (film) - REFERENCES Film; + alter table Film ADD constraint FK_Projekcia_Film From 991db122c0bf6b5b0d865a2199e87c10fcc921ed Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Fri, 29 Mar 2019 13:50:41 +0100 Subject: [PATCH 07/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 269 ++++++++++++++++++------------------ 1 file changed, 134 insertions(+), 135 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 2b62d7f..efed451 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -2,7 +2,7 @@ -- VUT FIT 2019 IDS --TO DO ---TIME, + --pull datas into table @@ -59,130 +59,129 @@ END; -create table Zamestnanec +CREATE TABLE zamestnanec ( -rodne_cislo char(11) primary key not null, -meno varchar2(120) not null, -priezvisko varchar2(120) not null, -Adresa varchar2(80) not null, -cisloUctu char(24), -hodinovaMzda number(4,3), -pozicia varchar2(50) not null, -Constraint pozicia_enum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')) +rodneCislo CHAR(11) PRIMARY KEY NOT NULL, +meno VARCHAR2(120) NOT NULL, +priezvisko VARCHAR2(120) NOT NULL, +adresa VARCHAR2(80) NOT NULL, +cisloUctu CHAR(24), +hodinovaMzda NUMBER(4,3), +pozicia VARCHAR2(50) NOT NULL, +CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')) ); -create table multikino +CREATE TABLE multikino ( -nameCin varchar2(50) Primary key not null, -mesto varchar2(180) NOT NULL, -ulica varchar2(180), -zamestnanci char(11) Not null, -MultikinoSala number not null, -constraint FK_zamestMultikina FOREIGN KEY - (zamestnanci) REFERENCES Zamestnanec - on delete cascade +nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, +mesto VARCHAR2(180) NOT NULL, +ulica VARCHAR2(180), +zamestnanci CHAR(11) NOT NULL, +multikinoSala NUMBER NOT NULL, +CONSTRAINT FKzamestMultikina FOREIGN KEY + (zamestnanci) REFERENCES zamestnanec + ON DELETE CASCADE ); -create table zanerFilmu -(nazov varchar2(20) NOT NULL, -popis varchar2(300), ---film number, -Constraint PK_zanerFilmu PRIMARY KEY (nazov) +CREATE TABLE zanerFilmu +(nazov VARCHAR2(20) NOT NULL, +popis VARCHAR2(300), +--film NUMBER, +CONSTRAINT PKzanerFilmu PRIMARY KEY (nazov) ); -create table Film -(FilmID INT GENERATED AS IDENTITY PRIMARY KEY not null, -nazovFilmu varchar2(20) NOT NULL, -rok number(4,0), -klucslova varchar2(200), -reziser varchar2(70), -trvanie number(3,1), -krajinaPovodu varchar2(50), -vekoveObmedzenie number(2,0) not null, -FilmZaner varchar2(20), -FilmProjekcia number -/*CONSTRAINT FK_Film_zaner FOREIGn KEY +CREATE TABLE film +(filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, +nazovFilmu VARCHAR2(20) NOT NULL, +rok NUMBER(4,0), +klucSlova VARCHAR2(200), +reziser VARCHAR2(70), +trvanie NUMBER(3,1), +krajinaPovodu VARCHAR2(50), +vekoveObmedzenie NUMBER(2,0) NOT NULL, +filmProjekcia NUMBER +/*CONSTRAINT FK_Film_zaner FOREIGN KEY (FilmZaner) REFERENCES zanerFilmu*/ ); -create table zanerFilmu_Film +CREATE TABLE zanerFilmuFilm ( -nazovZanru varchar2(20) not null, -FilmID number, -CONSTRAINT FK_Film_zaner FOREIGn KEY +nazovZanru VARCHAR2(20) NOT NULL, +filmIdentifikator NUMBER, +CONSTRAINT FKFilm_zaner FOREIGN KEY (nazovZanru) REFERENCES zanerFilmu, -CONSTRAINT FK_Film_ID FOREIGn KEY - (FilmID) REFERENCES Film +CONSTRAINT FKFilm_ID FOREIGN KEY + (filmIdentifikator) REFERENCES film ); /* -alter table zanerFilmu -ADD constraint FK_zanerFilmuFilm - Foreign key (film) +ALTER TABLE zanerFilmu +ADD CONSTRAINT FK_zanerFilmuFilm + FOREIGN KEY (film) REFERENCES Film;*/ -create table Projekcia +CREATE TABLE projekcia (projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, -titulky char(1), -jazyk varchar2(80), -datum date, -d3 char(1) not null, -ProjekciaRezervacia number, -ProjekciaVstupenka number not null +titulky CHAR(2), +jazyk VARCHAR2(80), +datum TIMESTAMP, +d3 CHAR(1) NOT NULL, +projekciaRezervacia NUMBER, +projekciaVstupenka NUMBER NOT NULL ); ---,casZacatia time - mal by stacit date? - -create table PremietaciaSala -(PremietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, -kapacita number(4,0), -projektor varchar2(50) not null, -SalaProjekcia number, -SalaSedadlo number not null, -constraint FK_SalaProjekcia Foreign key - (SalaProjekcia) references Projekcia - on delete cascade +--,casZacatia time - mal by stacit DATE? + +CREATE TABLE premietaciaSala +(premietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, +kapacita NUMBER(4,0), +projektor VARCHAR2(50) NOT NULL, +salaProjekcia NUMBER, +salaSedadlo NUMBER NOT NULL, +CONSTRAINT FK_SalaProjekcia FOREIGN KEY + (salaProjekcia) REFERENCES projekcia + ON DELETE CASCADE ); -create table Rezervacia -(RezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY not null, -cas Date not null, -cena Number(4,3) not null +CREATE TABLE rezervacia +(rezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, +cas DATE NOT NULL, +cena NUMBER(4,2) NOT NULL ); -create table Sedadlo -(SedadloID INT GENERATED AS IDENTITY PRIMARY KEY, -rad number(4,0) not null, -poradie number(4,0) not null, -obsadenost char(1) not null, -SedadloRezervacia number, -SedadloVstupenka number, -constraint FK_SedadloRezervacia Foreign key - (SedadloRezervacia) references Rezervacia - on delete cascade +CREATE TABLE sedadlo +(sedadloID INT GENERATED AS IDENTITY PRIMARY KEY, +rad NUMBER(4,0) NOT NULL, +poradie NUMBER(4,0) NOT NULL, +obsadenost CHAR(1) NOT NULL, +sedadloRezervacia NUMBER, +sedadloVstupenka NUMBER, +CONSTRAINT FK_SedadloRezervacia FOREIGN KEY + (sedadloRezervacia) REFERENCES rezervacia + ON DELETE CASCADE ); -create table Klient -(KlientID varchar2(50) Primary Key not null, -Heslo varchar2(50) not null, -vek number(3,0) not null, -status varchar2(10) not null, -KlientRezervacia number, -Constraint status_enum CHECK ( status IN('dieťa','študent','dôchodca','dospelý','invalid')), -constraint FK_Klient_Rezervacia Foreign key - (KlientRezervacia) references Rezervacia - on delete cascade +CREATE TABLE klient +(klientID VARCHAR2(50) PRIMARY KEY NOT NULL, +heslo VARCHAR2(50) NOT NULL, +vek NUMBER(3,0) NOT NULL, +status VARCHAR2(10) NOT NULL, +klientRezervacia NUMBER, +CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')), +CONSTRAINT FK_Klient_Rezervacia FOREIGN KEY + (klientRezervacia) REFERENCES rezervacia + ON DELETE CASCADE ); -create table Vstupenka -(VstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, -casPredaja date not null, -cena number(4,3) not null, -statusZakaznika varchar2(10) not null +CREATE TABLE vstupenka +(vstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, +casPredaja TIMESTAMP NOT NULL, +cena NUMBER(4,3) NOT NULL, +statusZakaznika VARCHAR2(10) NOT NULL ); @@ -190,56 +189,56 @@ statusZakaznika varchar2(10) not null -alter table Film -ADD constraint FK_Projekcia_Film - Foreign key (FilmProjekcia) - REFERENCES Film - on delete cascade; - -alter table Multikino -ADD constraint FK_Multikino_Sala - Foreign key (MultikinoSala) - REFERENCES PremietaciaSala - on delete cascade; - -alter table Projekcia -ADD constraint FK_Projekcia_Rezervacia - Foreign key (ProjekciaRezervacia) - REFERENCES Projekcia - on delete cascade; - -alter table Projekcia -ADD constraint FK_Projekcia_Vstupenka - Foreign key (ProjekciaVstupenka) - REFERENCES Vstupenka; - --vstupenky po zmazani projekcie ostanu kvôli vráteniu peňazí +ALTER TABLE film +ADD CONSTRAINT FK_Projekcia_Film + FOREIGN KEY (filmProjekcia) + REFERENCES film + ON DELETE CASCADE; + +ALTER TABLE multikino +ADD CONSTRAINT FK_Multikino_Sala + FOREIGN KEY (multikinoSala) + REFERENCES premietaciaSala + ON DELETE CASCADE; + +ALTER TABLE projekcia +ADD CONSTRAINT FK_Projekcia_Rezervacia + FOREIGN KEY (projekciaRezervacia) + REFERENCES projekcia + ON DELETE CASCADE; + +ALTER TABLE projekcia +ADD CONSTRAINT FK_Projekcia_Vstupenka + FOREIGN KEY (projekciaVstupenka) + REFERENCES vstupenka; + --vstupenky po zmazani projekcie ostanu kvôli vráteniu peoazí -alter table PremietaciaSala -ADD constraint FK_Sala_Sedadlo - Foreign key (SalaSedadlo) - references Sedadlo - on delete cascade; +ALTER TABLE premietaciaSala +ADD CONSTRAINT FK_Sala_Sedadlo + FOREIGN KEY (salaSedadlo) + REFERENCES sedadlo + ON DELETE CASCADE; -alter table Sedadlo -ADD constraint FK_Vstupenka_Sedadlo - Foreign key (SedadloVstupenka) - references Vstupenka; +ALTER TABLE sedadlo +ADD CONSTRAINT FK_Vstupenka_Sedadlo + FOREIGN KEY (sedadloVstupenka) + REFERENCES vstupenka; ----------------------------INSERTION OF THE DATA STARTS HERE----- -----------------------------------INSERTION ENDS HERE------------ ---Určenie spravcu databazy -GRANT ALL ON Zamestnanec TO xkobyd00; -GRANT ALL ON Multikino TO xkobyd00; -GRANT ALL ON Rezervacia TO xkobyd00; -GRANT ALL ON ZanerFilmu TO xkobyd00; -GRANT ALL ON Film TO xkobyd00; -GRANT ALL ON Sedadlo TO xkobyd00; -GRANT ALL ON Vstupenka TO xkobyd00; -GRANT ALL ON PremietaciaSala TO xkobyd00; -GRANT ALL ON Projekcia TO xkobyd00; -GRANT ALL ON Klient TO xkobyd00; +--Ureenie spravcu databazy +GRANT ALL ON zamestnanec TO xkobyd00; +GRANT ALL ON multikino TO xkobyd00; +GRANT ALL ON rezervacia TO xkobyd00; +GRANT ALL ON zanerFilmu TO xkobyd00; +GRANT ALL ON film TO xkobyd00; +GRANT ALL ON sedadlo TO xkobyd00; +GRANT ALL ON vstupenka TO xkobyd00; +GRANT ALL ON premietaciaSala TO xkobyd00; +GRANT ALL ON projekcia TO xkobyd00; +GRANT ALL ON klient TO xkobyd00; COMMIT; From b157de35321311c6912c063c06e81cd334a5098f Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Fri, 29 Mar 2019 15:09:33 +0100 Subject: [PATCH 08/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 155 ++++++++++++++++++++---------------- 1 file changed, 87 insertions(+), 68 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index efed451..caa54a8 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -46,6 +46,11 @@ BEGIN EXCEPTION WHEN others THEN NULL; END; / +BEGIN + EXECUTE immediate 'DROP TABLE tableZanerFilm CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ BEGIN EXECUTE immediate 'DROP TABLE Vstupenka CASCADE CONSTRAINTS'; EXCEPTION WHEN others THEN NULL; @@ -57,7 +62,27 @@ BEGIN END; / +/* +keywords is table of varchar2(10) +DECLARE + keywords is VARRAY(25) OF VARCHAR2(15); +CREATE TYPE keywords as VARRAY(25) OF VARCHAR2(15) +--vytvorený typ ... pole kľúčových slov(max 25) o dlžke max 15 +*/ + + +CREATE TABLE multikino +( +nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, +mesto VARCHAR2(180) NOT NULL, +ulica VARCHAR2(180), +--zamestnanci CHAR(11) NOT NULL, +multikinoSala NUMBER NOT NULL +--CONSTRAINT FKzamestMultikina FOREIGN KEY +-- (zamestnanci) REFERENCES zamestnanec +-- ON DELETE CASCADE +); CREATE TABLE zamestnanec ( @@ -68,24 +93,13 @@ adresa VARCHAR2(80) NOT NULL, cisloUctu CHAR(24), hodinovaMzda NUMBER(4,3), pozicia VARCHAR2(50) NOT NULL, -CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')) -); - - -CREATE TABLE multikino -( -nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, -mesto VARCHAR2(180) NOT NULL, -ulica VARCHAR2(180), -zamestnanci CHAR(11) NOT NULL, -multikinoSala NUMBER NOT NULL, -CONSTRAINT FKzamestMultikina FOREIGN KEY - (zamestnanci) REFERENCES zamestnanec +CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), +multikinoPraca VARCHAR2(50), +CONSTRAINT FKzamesMultikina FOREIGN KEY + (multikinoPraca) REFERENCES multikino ON DELETE CASCADE ); - - CREATE TABLE zanerFilmu (nazov VARCHAR2(20) NOT NULL, popis VARCHAR2(300), @@ -99,23 +113,21 @@ CREATE TABLE film (filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, nazovFilmu VARCHAR2(20) NOT NULL, rok NUMBER(4,0), -klucSlova VARCHAR2(200), +klucSlova varchar2(100),--HERE MISTAKE reziser VARCHAR2(70), trvanie NUMBER(3,1), krajinaPovodu VARCHAR2(50), -vekoveObmedzenie NUMBER(2,0) NOT NULL, -filmProjekcia NUMBER +vekoveObmedzenie NUMBER(2,0) NOT NULL /*CONSTRAINT FK_Film_zaner FOREIGN KEY (FilmZaner) REFERENCES zanerFilmu*/ ); -CREATE TABLE zanerFilmuFilm -( -nazovZanru VARCHAR2(20) NOT NULL, +CREATE TABLE tableZanerFilm +(nazovZanru VARCHAR2(20) NOT NULL, filmIdentifikator NUMBER, -CONSTRAINT FKFilm_zaner FOREIGN KEY +CONSTRAINT FKFilmZaner FOREIGN KEY (nazovZanru) REFERENCES zanerFilmu, -CONSTRAINT FKFilm_ID FOREIGN KEY +CONSTRAINT FKFilmID FOREIGN KEY (filmIdentifikator) REFERENCES film ); @@ -131,8 +143,10 @@ titulky CHAR(2), jazyk VARCHAR2(80), datum TIMESTAMP, d3 CHAR(1) NOT NULL, -projekciaRezervacia NUMBER, -projekciaVstupenka NUMBER NOT NULL +projekciaFilm NUMBER, +projekciaSala NUMBER, +CONSTRAINT FKFilmFromFilm FOREIGN KEY +(projekciaFilm) REFERENCES film ); --,casZacatia time - mal by stacit DATE? @@ -140,29 +154,19 @@ CREATE TABLE premietaciaSala (premietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, kapacita NUMBER(4,0), projektor VARCHAR2(50) NOT NULL, -salaProjekcia NUMBER, -salaSedadlo NUMBER NOT NULL, -CONSTRAINT FK_SalaProjekcia FOREIGN KEY - (salaProjekcia) REFERENCES projekcia - ON DELETE CASCADE +kino VARCHAR2(50), +CONSTRAINT FKkino FOREIGN KEY +(kino) REFERENCES multikino ); -CREATE TABLE rezervacia -(rezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, -cas DATE NOT NULL, -cena NUMBER(4,2) NOT NULL -); + CREATE TABLE sedadlo (sedadloID INT GENERATED AS IDENTITY PRIMARY KEY, rad NUMBER(4,0) NOT NULL, poradie NUMBER(4,0) NOT NULL, obsadenost CHAR(1) NOT NULL, -sedadloRezervacia NUMBER, -sedadloVstupenka NUMBER, -CONSTRAINT FK_SedadloRezervacia FOREIGN KEY - (sedadloRezervacia) REFERENCES rezervacia - ON DELETE CASCADE +sedadloRezervacia NUMBER ); CREATE TABLE klient @@ -170,10 +174,26 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -klientRezervacia NUMBER, -CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')), -CONSTRAINT FK_Klient_Rezervacia FOREIGN KEY - (klientRezervacia) REFERENCES rezervacia +CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')) +); + + + +CREATE TABLE rezervacia +(rezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, +cas DATE NOT NULL, +cena NUMBER(4,2) NOT NULL, +rezervProjekcia NUMBER, +rezervSedadlo number, +rezervKlient VARCHAR2(50), +CONSTRAINT FKRezervaciaProjekcia FOREIGN KEY + (rezervProjekcia) REFERENCES projekcia + ON DELETE CASCADE, +CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY + (rezervSedadlo) REFERENCES sedadlo + ON DELETE CASCADE, +CONSTRAINT FKRezervaciaKlient FOREIGN KEY + (rezervKlient) REFERENCES klient ON DELETE CASCADE ); @@ -181,48 +201,47 @@ CREATE TABLE vstupenka (vstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, casPredaja TIMESTAMP NOT NULL, cena NUMBER(4,3) NOT NULL, -statusZakaznika VARCHAR2(10) NOT NULL +statusZakaznika VARCHAR2(10) NOT NULL, +vstupenkaSedadlo NUMBER, +vstupenkaProjekcia NUMBER, +CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY + (vstupenkaSedadlo) REFERENCES sedadlo + ON DELETE CASCADE, +CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY + (vstupenkaProjekcia) REFERENCES projekcia + ON DELETE CASCADE ); - - --chybajuce väzby co treba urobit alter po tabulkach - +/* ALTER TABLE film ADD CONSTRAINT FK_Projekcia_Film FOREIGN KEY (filmProjekcia) REFERENCES film ON DELETE CASCADE; +*/ -ALTER TABLE multikino -ADD CONSTRAINT FK_Multikino_Sala - FOREIGN KEY (multikinoSala) +ALTER TABLE projekcia +ADD CONSTRAINT FKProjekciaSala + FOREIGN KEY (projekciaSala) REFERENCES premietaciaSala ON DELETE CASCADE; -ALTER TABLE projekcia -ADD CONSTRAINT FK_Projekcia_Rezervacia - FOREIGN KEY (projekciaRezervacia) - REFERENCES projekcia + +ALTER TABLE sedadlo +ADD CONSTRAINT FKSedadloRezervacia + FOREIGN KEY (sedadloRezervacia) + REFERENCES rezervacia ON DELETE CASCADE; -ALTER TABLE projekcia -ADD CONSTRAINT FK_Projekcia_Vstupenka - FOREIGN KEY (projekciaVstupenka) - REFERENCES vstupenka; + + + --vstupenky po zmazani projekcie ostanu kvôli vráteniu peoazí -ALTER TABLE premietaciaSala -ADD CONSTRAINT FK_Sala_Sedadlo - FOREIGN KEY (salaSedadlo) - REFERENCES sedadlo - ON DELETE CASCADE; -ALTER TABLE sedadlo -ADD CONSTRAINT FK_Vstupenka_Sedadlo - FOREIGN KEY (sedadloVstupenka) - REFERENCES vstupenka; + ----------------------------INSERTION OF THE DATA STARTS HERE----- From 1b36d0fdb84ecb00e6cc21d3874334322f951c69 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Fri, 29 Mar 2019 19:08:50 +0100 Subject: [PATCH 09/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 95 +++++++++++-------------------------- 1 file changed, 29 insertions(+), 66 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index caa54a8..a7cae6a 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -62,23 +62,13 @@ BEGIN END; / -/* -keywords is table of varchar2(10) -DECLARE - keywords is VARRAY(25) OF VARCHAR2(15); -CREATE TYPE keywords as VARRAY(25) OF VARCHAR2(15) ---vytvorený typ ... pole kľúčových slov(max 25) o dlžke max 15 -*/ - - - CREATE TABLE multikino ( nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, mesto VARCHAR2(180) NOT NULL, -ulica VARCHAR2(180), +ulica VARCHAR2(180) --zamestnanci CHAR(11) NOT NULL, -multikinoSala NUMBER NOT NULL +--multikinoSala NUMBER NOT NULL --CONSTRAINT FKzamestMultikina FOREIGN KEY -- (zamestnanci) REFERENCES zamestnanec -- ON DELETE CASCADE @@ -93,8 +83,8 @@ adresa VARCHAR2(80) NOT NULL, cisloUctu CHAR(24), hodinovaMzda NUMBER(4,3), pozicia VARCHAR2(50) NOT NULL, +multikinoPraca VARCHAR2(50) NOT NULL, CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), -multikinoPraca VARCHAR2(50), CONSTRAINT FKzamesMultikina FOREIGN KEY (multikinoPraca) REFERENCES multikino ON DELETE CASCADE @@ -108,22 +98,19 @@ CONSTRAINT PKzanerFilmu PRIMARY KEY (nazov) ); - CREATE TABLE film (filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, nazovFilmu VARCHAR2(20) NOT NULL, rok NUMBER(4,0), -klucSlova varchar2(100),--HERE MISTAKE +klucSlova VARCHAR(100),--HERE reziser VARCHAR2(70), trvanie NUMBER(3,1), krajinaPovodu VARCHAR2(50), vekoveObmedzenie NUMBER(2,0) NOT NULL -/*CONSTRAINT FK_Film_zaner FOREIGN KEY - (FilmZaner) REFERENCES zanerFilmu*/ ); CREATE TABLE tableZanerFilm -(nazovZanru VARCHAR2(20) NOT NULL, +(nazovZanru VARCHAR2(20), filmIdentifikator NUMBER, CONSTRAINT FKFilmZaner FOREIGN KEY (nazovZanru) REFERENCES zanerFilmu, @@ -131,33 +118,34 @@ CONSTRAINT FKFilmID FOREIGN KEY (filmIdentifikator) REFERENCES film ); -/* -ALTER TABLE zanerFilmu -ADD CONSTRAINT FK_zanerFilmuFilm - FOREIGN KEY (film) - REFERENCES Film;*/ +CREATE TABLE premietaciaSala +(premietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, +kapacita NUMBER(4,0), +projektor VARCHAR2(50) NOT NULL, +kino VARCHAR2(50) NOT NULL, +CONSTRAINT FKkino FOREIGN KEY +(kino) REFERENCES multikino +ON DELETE CASCADE +); CREATE TABLE projekcia (projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, titulky CHAR(2), jazyk VARCHAR2(80), -datum TIMESTAMP, +datum TIMESTAMP NOT NULL, d3 CHAR(1) NOT NULL, projekciaFilm NUMBER, projekciaSala NUMBER, -CONSTRAINT FKFilmFromFilm FOREIGN KEY +CONSTRAINT FKProjekciaFilm FOREIGN KEY (projekciaFilm) REFERENCES film + ON DELETE CASCADE, +CONSTRAINT FKSalaFilm FOREIGN KEY +(projekciaSala) REFERENCES premietaciaSala + ON DELETE CASCADE ); --,casZacatia time - mal by stacit DATE? -CREATE TABLE premietaciaSala -(premietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, -kapacita NUMBER(4,0), -projektor VARCHAR2(50) NOT NULL, -kino VARCHAR2(50), -CONSTRAINT FKkino FOREIGN KEY -(kino) REFERENCES multikino -); + @@ -166,7 +154,10 @@ CREATE TABLE sedadlo rad NUMBER(4,0) NOT NULL, poradie NUMBER(4,0) NOT NULL, obsadenost CHAR(1) NOT NULL, -sedadloRezervacia NUMBER +sedadloSala NUMBER NOT NULL, +CONSTRAINT FKSedadloSala FOREIGN KEY +(sedadloSala) REFERENCES premietaciaSala +ON DELETE CASCADE ); CREATE TABLE klient @@ -184,7 +175,7 @@ CREATE TABLE rezervacia cas DATE NOT NULL, cena NUMBER(4,2) NOT NULL, rezervProjekcia NUMBER, -rezervSedadlo number, +rezervSedadlo NUMBER, rezervKlient VARCHAR2(50), CONSTRAINT FKRezervaciaProjekcia FOREIGN KEY (rezervProjekcia) REFERENCES projekcia @@ -203,7 +194,7 @@ casPredaja TIMESTAMP NOT NULL, cena NUMBER(4,3) NOT NULL, statusZakaznika VARCHAR2(10) NOT NULL, vstupenkaSedadlo NUMBER, -vstupenkaProjekcia NUMBER, +vstupenkaProjekcia NUMBER NOT NULL, CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY (vstupenkaSedadlo) REFERENCES sedadlo ON DELETE CASCADE, @@ -213,41 +204,13 @@ CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY ); --chybajuce väzby co treba urobit alter po tabulkach - -/* -ALTER TABLE film -ADD CONSTRAINT FK_Projekcia_Film - FOREIGN KEY (filmProjekcia) - REFERENCES film - ON DELETE CASCADE; -*/ - -ALTER TABLE projekcia -ADD CONSTRAINT FKProjekciaSala - FOREIGN KEY (projekciaSala) - REFERENCES premietaciaSala - ON DELETE CASCADE; - - -ALTER TABLE sedadlo -ADD CONSTRAINT FKSedadloRezervacia - FOREIGN KEY (sedadloRezervacia) - REFERENCES rezervacia - ON DELETE CASCADE; - - - - - --vstupenky po zmazani projekcie ostanu kvôli vráteniu peoazí + --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí - - - ----------------------------INSERTION OF THE DATA STARTS HERE----- -----------------------------------INSERTION ENDS HERE------------ ---Ureenie spravcu databazy +--Ur?enie spravcu databazy GRANT ALL ON zamestnanec TO xkobyd00; GRANT ALL ON multikino TO xkobyd00; GRANT ALL ON rezervacia TO xkobyd00; From edb05f4bf626f67ff4c46fe1e14d986956385e9e Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Fri, 29 Mar 2019 19:10:50 +0100 Subject: [PATCH 10/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index a7cae6a..f8c016d 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -67,11 +67,6 @@ CREATE TABLE multikino nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, mesto VARCHAR2(180) NOT NULL, ulica VARCHAR2(180) ---zamestnanci CHAR(11) NOT NULL, ---multikinoSala NUMBER NOT NULL ---CONSTRAINT FKzamestMultikina FOREIGN KEY --- (zamestnanci) REFERENCES zamestnanec --- ON DELETE CASCADE ); CREATE TABLE zamestnanec @@ -143,11 +138,6 @@ CONSTRAINT FKSalaFilm FOREIGN KEY (projekciaSala) REFERENCES premietaciaSala ON DELETE CASCADE ); ---,casZacatia time - mal by stacit DATE? - - - - CREATE TABLE sedadlo (sedadloID INT GENERATED AS IDENTITY PRIMARY KEY, @@ -202,7 +192,6 @@ CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY (vstupenkaProjekcia) REFERENCES projekcia ON DELETE CASCADE ); ---chybajuce väzby co treba urobit alter po tabulkach --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí @@ -237,4 +226,4 @@ drop table Film; drop table zanerFilmu; drop table multikino; drop table Zamestnanec; -*/ \ No newline at end of file +*/ From 55ec749eb4f635dbeef572a36f424db62b2d34c6 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Fri, 29 Mar 2019 19:13:12 +0100 Subject: [PATCH 11/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index f8c016d..0991f70 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -80,7 +80,7 @@ hodinovaMzda NUMBER(4,3), pozicia VARCHAR2(50) NOT NULL, multikinoPraca VARCHAR2(50) NOT NULL, CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), -CONSTRAINT FKzamesMultikina FOREIGN KEY +CONSTRAINT FKZamesMultikina FOREIGN KEY (multikinoPraca) REFERENCES multikino ON DELETE CASCADE ); @@ -118,7 +118,7 @@ CREATE TABLE premietaciaSala kapacita NUMBER(4,0), projektor VARCHAR2(50) NOT NULL, kino VARCHAR2(50) NOT NULL, -CONSTRAINT FKkino FOREIGN KEY +CONSTRAINT FKKino FOREIGN KEY (kino) REFERENCES multikino ON DELETE CASCADE ); From 318c3f908b45881f9af03d89c92635cbe6d2591c Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 31 Mar 2019 11:57:14 +0200 Subject: [PATCH 12/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 36 ++++++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 0991f70..96ef54c 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -82,7 +82,10 @@ multikinoPraca VARCHAR2(50) NOT NULL, CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), CONSTRAINT FKZamesMultikina FOREIGN KEY (multikinoPraca) REFERENCES multikino - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_hodinovaMzda CHECK (hodinovaMzda>=0) +--check rodne cislo +--check cisloUctu ); CREATE TABLE zanerFilmu @@ -97,11 +100,22 @@ CREATE TABLE film (filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, nazovFilmu VARCHAR2(20) NOT NULL, rok NUMBER(4,0), -klucSlova VARCHAR(100),--HERE +klucSlova NUMBER,--HERE reziser VARCHAR2(70), trvanie NUMBER(3,1), krajinaPovodu VARCHAR2(50), -vekoveObmedzenie NUMBER(2,0) NOT NULL +vekoveObmedzenie NUMBER(2,0) NOT NULL, +CONSTRAINT CHECK_rokDown CHECK (rok>=1850), +CONSTRAINT CHECK_rokUp CHECK (rok<3000), +CONSTRAINT CHECK_trvanie CHECK (trvanie>=0), +CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), +CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) +); + +--HERE DO NOT KNOW +CREATE TABLE klucSlova +( +klucSlovo varchar(25) ); CREATE TABLE tableZanerFilm @@ -120,7 +134,8 @@ projektor VARCHAR2(50) NOT NULL, kino VARCHAR2(50) NOT NULL, CONSTRAINT FKKino FOREIGN KEY (kino) REFERENCES multikino -ON DELETE CASCADE +ON DELETE CASCADE, +CONSTRAINT CHECK_kapacita CHECK (kapacita>0) ); CREATE TABLE projekcia @@ -147,7 +162,9 @@ obsadenost CHAR(1) NOT NULL, sedadloSala NUMBER NOT NULL, CONSTRAINT FKSedadloSala FOREIGN KEY (sedadloSala) REFERENCES premietaciaSala -ON DELETE CASCADE +ON DELETE CASCADE, +CONSTRAINT CHECK_poradie CHECK (poradie>0), +CONSTRAINT CHECK_rad CHECK (rad>0) ); CREATE TABLE klient @@ -155,7 +172,8 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')) +CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')), +CONSTRAINT CHECK_vek CHECK (vek>0) ); @@ -175,7 +193,8 @@ CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKRezervaciaKlient FOREIGN KEY (rezervKlient) REFERENCES klient - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_cena CHECK (cena>=0) ); CREATE TABLE vstupenka @@ -190,7 +209,8 @@ CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY (vstupenkaProjekcia) REFERENCES projekcia - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_cenaVstupenka CHECK (cena>=0) ); --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí From 55777e0a35a342efac6544afd068eda6296680d1 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 31 Mar 2019 12:07:39 +0200 Subject: [PATCH 13/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 96ef54c..7c92b4c 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -100,7 +100,7 @@ CREATE TABLE film (filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, nazovFilmu VARCHAR2(20) NOT NULL, rok NUMBER(4,0), -klucSlova NUMBER,--HERE +klucSlova VARCHAR2(300),--HERE reziser VARCHAR2(70), trvanie NUMBER(3,1), krajinaPovodu VARCHAR2(50), @@ -112,11 +112,6 @@ CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) ); ---HERE DO NOT KNOW -CREATE TABLE klucSlova -( -klucSlovo varchar(25) -); CREATE TABLE tableZanerFilm (nazovZanru VARCHAR2(20), From b02325a2886991c0cef3b3eb6d16f10cefa2d345 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 31 Mar 2019 12:35:56 +0200 Subject: [PATCH 14/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 33 +++++++++------------------------ 1 file changed, 9 insertions(+), 24 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 7c92b4c..824d274 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -82,10 +82,7 @@ multikinoPraca VARCHAR2(50) NOT NULL, CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), CONSTRAINT FKZamesMultikina FOREIGN KEY (multikinoPraca) REFERENCES multikino - ON DELETE CASCADE, -CONSTRAINT CHECK_hodinovaMzda CHECK (hodinovaMzda>=0) ---check rodne cislo ---check cisloUctu + ON DELETE CASCADE ); CREATE TABLE zanerFilmu @@ -100,19 +97,13 @@ CREATE TABLE film (filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, nazovFilmu VARCHAR2(20) NOT NULL, rok NUMBER(4,0), -klucSlova VARCHAR2(300),--HERE +klucSlova VARCHAR(100),--HERE reziser VARCHAR2(70), trvanie NUMBER(3,1), krajinaPovodu VARCHAR2(50), -vekoveObmedzenie NUMBER(2,0) NOT NULL, -CONSTRAINT CHECK_rokDown CHECK (rok>=1850), -CONSTRAINT CHECK_rokUp CHECK (rok<3000), -CONSTRAINT CHECK_trvanie CHECK (trvanie>=0), -CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), -CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) +vekoveObmedzenie NUMBER(2,0) NOT NULL ); - CREATE TABLE tableZanerFilm (nazovZanru VARCHAR2(20), filmIdentifikator NUMBER, @@ -129,8 +120,7 @@ projektor VARCHAR2(50) NOT NULL, kino VARCHAR2(50) NOT NULL, CONSTRAINT FKKino FOREIGN KEY (kino) REFERENCES multikino -ON DELETE CASCADE, -CONSTRAINT CHECK_kapacita CHECK (kapacita>0) +ON DELETE CASCADE ); CREATE TABLE projekcia @@ -157,9 +147,7 @@ obsadenost CHAR(1) NOT NULL, sedadloSala NUMBER NOT NULL, CONSTRAINT FKSedadloSala FOREIGN KEY (sedadloSala) REFERENCES premietaciaSala -ON DELETE CASCADE, -CONSTRAINT CHECK_poradie CHECK (poradie>0), -CONSTRAINT CHECK_rad CHECK (rad>0) +ON DELETE CASCADE ); CREATE TABLE klient @@ -167,8 +155,7 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')), -CONSTRAINT CHECK_vek CHECK (vek>0) +CONSTRAINT statusEnum CHECK ( status IN('die?a','?tudent','d?chodca','dospel?','invalid')) ); @@ -188,8 +175,7 @@ CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKRezervaciaKlient FOREIGN KEY (rezervKlient) REFERENCES klient - ON DELETE CASCADE, -CONSTRAINT CHECK_cena CHECK (cena>=0) + ON DELETE CASCADE ); CREATE TABLE vstupenka @@ -204,11 +190,10 @@ CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY (vstupenkaProjekcia) REFERENCES projekcia - ON DELETE CASCADE, -CONSTRAINT CHECK_cenaVstupenka CHECK (cena>=0) + ON DELETE CASCADE ); - --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí + --vstupenky po zmazani projekcie ostanu kv?li vr?teniu pe?az? ----------------------------INSERTION OF THE DATA STARTS HERE----- From 79c489f4817dc1e7df60fa16f1cd6d1b4d2fbbc6 Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 31 Mar 2019 12:39:32 +0200 Subject: [PATCH 15/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 824d274..2e4cba0 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -155,7 +155,7 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('die?a','?tudent','d?chodca','dospel?','invalid')) +CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')) ); @@ -193,7 +193,7 @@ CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY ON DELETE CASCADE ); - --vstupenky po zmazani projekcie ostanu kv?li vr?teniu pe?az? + --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí ----------------------------INSERTION OF THE DATA STARTS HERE----- @@ -226,4 +226,4 @@ drop table Film; drop table zanerFilmu; drop table multikino; drop table Zamestnanec; -*/ +*/ \ No newline at end of file From e0a88ad24adb0c0942581a00b2091df4316bbacf Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Sun, 31 Mar 2019 13:17:21 +0200 Subject: [PATCH 16/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 42 ++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 8 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index 2e4cba0..37c5bc2 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -1,9 +1,6 @@ --Authors: Simon Kobyda, Michal Zelenak -- VUT FIT 2019 IDS ---TO DO - - --pull datas into table BEGIN @@ -155,14 +152,14 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('die?a','študent','dôchodca','dospelý','invalid')) +CONSTRAINT statusEnum CHECK ( status IN('dieta','student','dochodca','dospely','invalid')) ); CREATE TABLE rezervacia (rezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, -cas DATE NOT NULL, +cas TIMESTAMP NOT NULL, cena NUMBER(4,2) NOT NULL, rezervProjekcia NUMBER, rezervSedadlo NUMBER, @@ -193,13 +190,42 @@ CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY ON DELETE CASCADE ); - --vstupenky po zmazani projekcie ostanu kvôli vráteniu pe?azí + --vstupenky po zmazani projekcie ostanu kvoli vrateniu penaz? ----------------------------INSERTION OF THE DATA STARTS HERE----- +INSERT INTO multikino (nameCin, mesto, ulica) +VALUES ('LuxCinematic', 'Brno', 'Metodejova'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('980604/6825', 'Andrej', 'Kristofan', 'Matice Slovinskej 1225/2 Brno', 'SK8975000000000012345671', 3.50, 'pokladnik', 'LuxCinematic'); + +INSERT INTO zanerFilmu (nazov, popis) +VALUES ('thriller', 'Zaner, ktory ma u divaka vyvola silne napatie a emocie. Pozostava z rychleho sledu udalosti a castej akcie'); + +INSERT INTO film (nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES ('Mission: Impossible', 2018, 'action, hollywood, tom cruise', 'Christopher McQuarrie', 14, 'USA', 16); + +INSERT INTO premietaciaSala (kapacita, projektor, kino) +VALUES (272, 'Benq W11000H', 'LuxCinematic'); + +INSERT INTO projekcia (titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES ('CZ', 'anglicky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', TODO, TODO); + +INSERT INTO sedadlo (rad, poradie, obsadenost, sedadloSala) +VALUES (5, 22, 'n', TODO); + +INSERT INTO klient (klientID, heslo, vek, status) +VALUES (5887, 'fakepassword', 35, 'invalid'); + +INSERT INTO rezervacia (cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, TODO, TODO, 5887); + +INSERT INTO vstupenka (casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.999, 'invalid', TODO, TODO); -----------------------------------INSERTION ENDS HERE------------ ---Ur?enie spravcu databazy +--Urcenie spravcu databazy GRANT ALL ON zamestnanec TO xkobyd00; GRANT ALL ON multikino TO xkobyd00; GRANT ALL ON rezervacia TO xkobyd00; @@ -226,4 +252,4 @@ drop table Film; drop table zanerFilmu; drop table multikino; drop table Zamestnanec; -*/ \ No newline at end of file +*/ From 9b9fe0bffb104d11dec3a028572e50a4aebd477c Mon Sep 17 00:00:00 2001 From: xDaile <43553977+xDaile@users.noreply.github.com> Date: Thu, 11 Apr 2019 19:20:07 +0200 Subject: [PATCH 17/19] Update xkobyd00_xzelen24.sql --- proj2/xkobyd00_xzelen24.sql | 224 ++++++++++++++++++++++++++++++------ 1 file changed, 190 insertions(+), 34 deletions(-) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xkobyd00_xzelen24.sql index f5a2000..df3eda9 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xkobyd00_xzelen24.sql @@ -58,6 +58,44 @@ BEGIN EXCEPTION WHEN others THEN NULL; END; / +BEGIN + EXECUTE immediate 'DROP SEQUENCE film_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE premietaciaSala_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE projekcia_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE sedadlo_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE rezervacia_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE vstupenka_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ + +CREATE SEQUENCE film_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE premietaciaSala_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE projekcia_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE sedadlo_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE rezervacia_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE vstupenka_seq START WITH 1 INCREMENT BY 1; +--premietaciaSalaID CREATE TABLE multikino ( @@ -73,13 +111,14 @@ meno VARCHAR2(120) NOT NULL, priezvisko VARCHAR2(120) NOT NULL, adresa VARCHAR2(80) NOT NULL, cisloUctu CHAR(24), -hodinovaMzda NUMBER(4,3), +hodinovaMzda NUMBER(4,2), pozicia VARCHAR2(50) NOT NULL, multikinoPraca VARCHAR2(50) NOT NULL, CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), CONSTRAINT FKZamesMultikina FOREIGN KEY (multikinoPraca) REFERENCES multikino - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_hodinovaMzda CHECK (hodinovaMzda>=0) ); CREATE TABLE zanerFilmu @@ -91,14 +130,19 @@ CONSTRAINT PKzanerFilmu PRIMARY KEY (nazov) CREATE TABLE film -(filmID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, -nazovFilmu VARCHAR2(20) NOT NULL, +(filmID INTEGER PRIMARY KEY NOT NULL, +nazovFilmu VARCHAR2(200) NOT NULL, rok NUMBER(4,0), -klucSlova VARCHAR(100),--HERE +klucSlova VARCHAR(300),--HERE reziser VARCHAR2(70), -trvanie NUMBER(3,1), +trvanie NUMBER(3,0), krajinaPovodu VARCHAR2(50), -vekoveObmedzenie NUMBER(2,0) NOT NULL +vekoveObmedzenie NUMBER(2,0) NOT NULL, +CONSTRAINT CHECK_rokDown CHECK (rok>=1850), +CONSTRAINT CHECK_rokUp CHECK (rok<3000), +CONSTRAINT CHECK_trvanie CHECK (trvanie>=0), +CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), +CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) ); CREATE TABLE tableZanerFilm @@ -111,17 +155,18 @@ CONSTRAINT FKFilmID FOREIGN KEY ); CREATE TABLE premietaciaSala -(premietaciaSalaID INT GENERATED AS IDENTITY PRIMARY KEY, +(premietaciaSalaID INTEGER PRIMARY KEY, kapacita NUMBER(4,0), projektor VARCHAR2(50) NOT NULL, kino VARCHAR2(50) NOT NULL, CONSTRAINT FKKino FOREIGN KEY (kino) REFERENCES multikino -ON DELETE CASCADE +ON DELETE CASCADE, +CONSTRAINT CHECK_kapacita CHECK (kapacita>0) ); CREATE TABLE projekcia -(projekciaID INT GENERATED AS IDENTITY PRIMARY KEY, +(projekciaID INTEGER PRIMARY KEY, titulky CHAR(2), jazyk VARCHAR2(80), datum TIMESTAMP NOT NULL, @@ -133,18 +178,22 @@ CONSTRAINT FKProjekciaFilm FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKSalaFilm FOREIGN KEY (projekciaSala) REFERENCES premietaciaSala - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT d3Check CHECK ( d3 IN('y','n')) ); CREATE TABLE sedadlo -(sedadloID INT GENERATED AS IDENTITY PRIMARY KEY, +(sedadloID INTEGER PRIMARY KEY, rad NUMBER(4,0) NOT NULL, poradie NUMBER(4,0) NOT NULL, obsadenost CHAR(1) NOT NULL, sedadloSala NUMBER NOT NULL, CONSTRAINT FKSedadloSala FOREIGN KEY (sedadloSala) REFERENCES premietaciaSala -ON DELETE CASCADE +ON DELETE CASCADE, +CONSTRAINT CHECK_poradie CHECK (poradie>0), +CONSTRAINT CHECK_rad CHECK (rad>0), +CONSTRAINT obsadenostCheck CHECK ( obsadenost IN('y','n')) ); CREATE TABLE klient @@ -152,13 +201,14 @@ CREATE TABLE klient heslo VARCHAR2(50) NOT NULL, vek NUMBER(3,0) NOT NULL, status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('dieta','student','dochodca','dospely','invalid')) +CONSTRAINT statusEnum CHECK ( status IN('dieta','student','dochodca','dospely','invalid')), +CONSTRAINT CHECK_vek CHECK (vek>0) ); CREATE TABLE rezervacia -(rezervaciaID INT GENERATED AS IDENTITY PRIMARY KEY NOT NULL, +(rezervaciaID INTEGER PRIMARY KEY NOT NULL, cas TIMESTAMP NOT NULL, cena NUMBER(4,2) NOT NULL, rezervProjekcia NUMBER, @@ -172,13 +222,14 @@ CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKRezervaciaKlient FOREIGN KEY (rezervKlient) REFERENCES klient - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_cena CHECK (cena>=0) ); CREATE TABLE vstupenka -(vstupenkaID INT GENERATED AS IDENTITY PRIMARY KEY, +(vstupenkaID INTEGER PRIMARY KEY, casPredaja TIMESTAMP NOT NULL, -cena NUMBER(4,3) NOT NULL, +cena NUMBER(4,2) NOT NULL, statusZakaznika VARCHAR2(10) NOT NULL, vstupenkaSedadlo NUMBER, vstupenkaProjekcia NUMBER NOT NULL, @@ -187,43 +238,140 @@ CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY ON DELETE CASCADE, CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY (vstupenkaProjekcia) REFERENCES projekcia - ON DELETE CASCADE + ON DELETE CASCADE, +CONSTRAINT CHECK_cenaVstupenka CHECK (cena>=0), +CONSTRAINT CHECK_status CHECK ( statusZakaznika IN('dieta','student','dochodca','dospely','invalid')) ); --vstupenky po zmazani projekcie ostanu kvoli vrateniu penazi + + + + + ----------------------------INSERTION OF THE DATA STARTS HERE----- INSERT INTO multikino (nameCin, mesto, ulica) VALUES ('LuxCinematic', 'Brno', 'Metodejova'); +INSERT INTO multikino (nameCin, mesto, ulica) +VALUES ('CineMax', 'Trencin', 'Stefanika'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('980604/6825', 'Andrej', 'Kristofan', 'Matice Slovenskej 1225/2 Brno', 'SK8975000000000012345671', 4.50, 'pokladnik', 'LuxCinematic'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('970904/3825', 'Michaela', 'Novakova', 'Svatoplukova 1226/2 Brno', 'CZ8375000000000012345336', 4.80, 'veduci', 'LuxCinematic'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('980614/6325', 'Milan', 'Orzsagh', 'Ludovita Stura 1425/1 Trencin', 'SK8215000000000012345671', 3.50, 'pokladnik', 'CineMax'); + INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) -VALUES ('980604/6825', 'Andrej', 'Kristofan', 'Matice Slovinskej 1225/2 Brno', 'SK8975000000000012345671', 3.50, 'pokladnik', 'LuxCinematic'); +VALUES ('970104/1825', 'Gabriela', 'Janosikova', 'Svatoplukova 1526/3 Svinna', 'SK8123000000000012345336', 3.95, 'veduci', 'CineMax'); + INSERT INTO zanerFilmu (nazov, popis) VALUES ('thriller', 'Zaner, ktory ma u divaka vyvola silne napatie a emocie. Pozostava z rychleho sledu udalosti a castej akcie'); -INSERT INTO film (nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) -VALUES ('Mission: Impossible', 2018, 'action, hollywood, tom cruise', 'Christopher McQuarrie', 14, 'USA', 16); +INSERT INTO zanerFilmu (nazov, popis) +VALUES ('horror', 'Horror je zaner, ktorého cieľom je u diváka vyvolať pocit strachu a desu.'); + + +INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES (film_seq.nextval,'Mission: Impossible', 2018, 'action, hollywood, tom cruise', 'Christopher McQuarrie', 14, 'USA', 16); + +INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES (film_seq.nextval,'Us', 2019, 'horror, hollywood, tom Yahya Abdul-Mateen II', 'Jordan Peele', 95, 'USA', 18); + + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,272, 'Benq W11000H', 'LuxCinematic'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,272, 'Benq W11000H', 'LuxCinematic'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,272, 'Benq Q22000H', 'CineMax'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,272, 'Benq Q22000H', 'CineMax'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('horror','2'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('thriller','1'); + + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('thriller','1'); -INSERT INTO premietaciaSala (kapacita, projektor, kino) -VALUES (272, 'Benq W11000H', 'LuxCinematic'); +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'anglicky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 1, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" -INSERT INTO projekcia (titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) -VALUES ('CZ', 'anglicky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', TODO, TODO); +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'EN', 'slovensky', to_timestamp('2019-11-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" -INSERT INTO sedadlo (rad, poradie, obsadenost, sedadloSala) -VALUES (5, 22, 'n', TODO); +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'EN', 'anglicky', to_timestamp('2019-12-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 1, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'slovensky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 22, 'n', 1); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 23, 'n', 1); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 24, 'n', 1); + + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 22, 'n', 2); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 23, 'n', 2); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 24, 'n', 2); INSERT INTO klient (klientID, heslo, vek, status) -VALUES (5887, 'fakepassword', 35, 'invalid'); +VALUES ('login123', 'fakepassword', 35, 'invalid'); -INSERT INTO rezervacia (cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) -VALUES (to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, TODO, TODO, 5887); +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('Peter24', 'fakestPasword', 15, 'student'); -INSERT INTO vstupenka (casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) -VALUES (to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.999, 'invalid', TODO, TODO); +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('Dracula69', 'beutifulPasword', 95, 'dochodca'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 1, 1, 'login123'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.99, 2, 2, 'Peter24'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 3, 1, 'Dracula69'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.99, 3, 2, 'Peter24'); +--INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +--VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); + +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:35:15', 'YYYY-MM-DD:HH24:MI:SS'), 79.99, 'student', 2, 1); + +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:37:34', 'YYYY-MM-DD:HH24:MI:SS'), 69.99, 'invalid', 4, 3); +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:39:34', 'YYYY-MM-DD:HH24:MI:SS'), 99.99, 'student', 5, 4); -----------------------------------INSERTION ENDS HERE------------ --Urcenie spravcu databazy GRANT ALL ON zamestnanec TO xkobyd00; @@ -239,8 +387,14 @@ GRANT ALL ON klient TO xkobyd00; COMMIT; +--should or should not be this commented? will be sequence used then? /* ---drop table trzbyFilmu; +DROP SEQUENCE film_seq; +DROP SEQUENCE premietaciaSala_seq; +DROP SEQUENCE projekcia_seq; +DROP SEQUENCE sedadlo_seq; +DROP SEQUENCE rezervacia_seq; +DROP SEQUENCE vstupenka_seq; drop table Vstupenka; drop table Klient; drop table Sedadlo; @@ -253,3 +407,5 @@ drop table zanerFilmu; drop table multikino; drop table Zamestnanec; */ + + From fe9752aa8488be64a8d17e55724813f1818af543 Mon Sep 17 00:00:00 2001 From: xDaile Date: Tue, 14 Apr 2020 19:25:47 +0200 Subject: [PATCH 18/19] modified file --- ...d00_xzelen24.sql => xzelen24_xkobyd00.sql} | 942 ++++++++++-------- 1 file changed, 531 insertions(+), 411 deletions(-) rename proj2/{xkobyd00_xzelen24.sql => xzelen24_xkobyd00.sql} (72%) diff --git a/proj2/xkobyd00_xzelen24.sql b/proj2/xzelen24_xkobyd00.sql similarity index 72% rename from proj2/xkobyd00_xzelen24.sql rename to proj2/xzelen24_xkobyd00.sql index df3eda9..5ec75c5 100644 --- a/proj2/xkobyd00_xzelen24.sql +++ b/proj2/xzelen24_xkobyd00.sql @@ -1,411 +1,531 @@ ---Authors: Simon Kobyda, Michal Zelenak --- VUT FIT 2019 IDS - ---pull datas into table - -BEGIN - EXECUTE immediate 'DROP TABLE Zamestnanec CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE ZanerFilmu CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Film CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Projekcia CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE PremietaciaSala CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Rezervacia CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Sedadlo CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Klient CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE tableZanerFilm CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Vstupenka CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP TABLE Multikino CASCADE CONSTRAINTS'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE film_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE premietaciaSala_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE projekcia_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE sedadlo_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE rezervacia_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ -BEGIN - EXECUTE immediate 'DROP SEQUENCE vstupenka_seq'; - EXCEPTION WHEN others THEN NULL; -END; -/ - -CREATE SEQUENCE film_seq START WITH 1 INCREMENT BY 1; -CREATE SEQUENCE premietaciaSala_seq START WITH 1 INCREMENT BY 1; -CREATE SEQUENCE projekcia_seq START WITH 1 INCREMENT BY 1; -CREATE SEQUENCE sedadlo_seq START WITH 1 INCREMENT BY 1; -CREATE SEQUENCE rezervacia_seq START WITH 1 INCREMENT BY 1; -CREATE SEQUENCE vstupenka_seq START WITH 1 INCREMENT BY 1; ---premietaciaSalaID - -CREATE TABLE multikino -( -nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, -mesto VARCHAR2(180) NOT NULL, -ulica VARCHAR2(180) -); - -CREATE TABLE zamestnanec -( -rodneCislo CHAR(11) PRIMARY KEY NOT NULL, -meno VARCHAR2(120) NOT NULL, -priezvisko VARCHAR2(120) NOT NULL, -adresa VARCHAR2(80) NOT NULL, -cisloUctu CHAR(24), -hodinovaMzda NUMBER(4,2), -pozicia VARCHAR2(50) NOT NULL, -multikinoPraca VARCHAR2(50) NOT NULL, -CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), -CONSTRAINT FKZamesMultikina FOREIGN KEY - (multikinoPraca) REFERENCES multikino - ON DELETE CASCADE, -CONSTRAINT CHECK_hodinovaMzda CHECK (hodinovaMzda>=0) -); - -CREATE TABLE zanerFilmu -(nazov VARCHAR2(20) NOT NULL, -popis VARCHAR2(300), ---film NUMBER, -CONSTRAINT PKzanerFilmu PRIMARY KEY (nazov) -); - - -CREATE TABLE film -(filmID INTEGER PRIMARY KEY NOT NULL, -nazovFilmu VARCHAR2(200) NOT NULL, -rok NUMBER(4,0), -klucSlova VARCHAR(300),--HERE -reziser VARCHAR2(70), -trvanie NUMBER(3,0), -krajinaPovodu VARCHAR2(50), -vekoveObmedzenie NUMBER(2,0) NOT NULL, -CONSTRAINT CHECK_rokDown CHECK (rok>=1850), -CONSTRAINT CHECK_rokUp CHECK (rok<3000), -CONSTRAINT CHECK_trvanie CHECK (trvanie>=0), -CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), -CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) -); - -CREATE TABLE tableZanerFilm -(nazovZanru VARCHAR2(20), -filmIdentifikator NUMBER, -CONSTRAINT FKFilmZaner FOREIGN KEY - (nazovZanru) REFERENCES zanerFilmu, -CONSTRAINT FKFilmID FOREIGN KEY - (filmIdentifikator) REFERENCES film -); - -CREATE TABLE premietaciaSala -(premietaciaSalaID INTEGER PRIMARY KEY, -kapacita NUMBER(4,0), -projektor VARCHAR2(50) NOT NULL, -kino VARCHAR2(50) NOT NULL, -CONSTRAINT FKKino FOREIGN KEY -(kino) REFERENCES multikino -ON DELETE CASCADE, -CONSTRAINT CHECK_kapacita CHECK (kapacita>0) -); - -CREATE TABLE projekcia -(projekciaID INTEGER PRIMARY KEY, -titulky CHAR(2), -jazyk VARCHAR2(80), -datum TIMESTAMP NOT NULL, -d3 CHAR(1) NOT NULL, -projekciaFilm NUMBER, -projekciaSala NUMBER, -CONSTRAINT FKProjekciaFilm FOREIGN KEY -(projekciaFilm) REFERENCES film - ON DELETE CASCADE, -CONSTRAINT FKSalaFilm FOREIGN KEY -(projekciaSala) REFERENCES premietaciaSala - ON DELETE CASCADE, -CONSTRAINT d3Check CHECK ( d3 IN('y','n')) -); - -CREATE TABLE sedadlo -(sedadloID INTEGER PRIMARY KEY, -rad NUMBER(4,0) NOT NULL, -poradie NUMBER(4,0) NOT NULL, -obsadenost CHAR(1) NOT NULL, -sedadloSala NUMBER NOT NULL, -CONSTRAINT FKSedadloSala FOREIGN KEY -(sedadloSala) REFERENCES premietaciaSala -ON DELETE CASCADE, -CONSTRAINT CHECK_poradie CHECK (poradie>0), -CONSTRAINT CHECK_rad CHECK (rad>0), -CONSTRAINT obsadenostCheck CHECK ( obsadenost IN('y','n')) -); - -CREATE TABLE klient -(klientID VARCHAR2(50) PRIMARY KEY NOT NULL, -heslo VARCHAR2(50) NOT NULL, -vek NUMBER(3,0) NOT NULL, -status VARCHAR2(10) NOT NULL, -CONSTRAINT statusEnum CHECK ( status IN('dieta','student','dochodca','dospely','invalid')), -CONSTRAINT CHECK_vek CHECK (vek>0) -); - - - -CREATE TABLE rezervacia -(rezervaciaID INTEGER PRIMARY KEY NOT NULL, -cas TIMESTAMP NOT NULL, -cena NUMBER(4,2) NOT NULL, -rezervProjekcia NUMBER, -rezervSedadlo NUMBER, -rezervKlient VARCHAR2(50), -CONSTRAINT FKRezervaciaProjekcia FOREIGN KEY - (rezervProjekcia) REFERENCES projekcia - ON DELETE CASCADE, -CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY - (rezervSedadlo) REFERENCES sedadlo - ON DELETE CASCADE, -CONSTRAINT FKRezervaciaKlient FOREIGN KEY - (rezervKlient) REFERENCES klient - ON DELETE CASCADE, -CONSTRAINT CHECK_cena CHECK (cena>=0) -); - -CREATE TABLE vstupenka -(vstupenkaID INTEGER PRIMARY KEY, -casPredaja TIMESTAMP NOT NULL, -cena NUMBER(4,2) NOT NULL, -statusZakaznika VARCHAR2(10) NOT NULL, -vstupenkaSedadlo NUMBER, -vstupenkaProjekcia NUMBER NOT NULL, -CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY - (vstupenkaSedadlo) REFERENCES sedadlo - ON DELETE CASCADE, -CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY - (vstupenkaProjekcia) REFERENCES projekcia - ON DELETE CASCADE, -CONSTRAINT CHECK_cenaVstupenka CHECK (cena>=0), -CONSTRAINT CHECK_status CHECK ( statusZakaznika IN('dieta','student','dochodca','dospely','invalid')) -); - - --vstupenky po zmazani projekcie ostanu kvoli vrateniu penazi - - - - - - - -----------------------------INSERTION OF THE DATA STARTS HERE----- -INSERT INTO multikino (nameCin, mesto, ulica) -VALUES ('LuxCinematic', 'Brno', 'Metodejova'); - -INSERT INTO multikino (nameCin, mesto, ulica) -VALUES ('CineMax', 'Trencin', 'Stefanika'); - -INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) -VALUES ('980604/6825', 'Andrej', 'Kristofan', 'Matice Slovenskej 1225/2 Brno', 'SK8975000000000012345671', 4.50, 'pokladnik', 'LuxCinematic'); - -INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) -VALUES ('970904/3825', 'Michaela', 'Novakova', 'Svatoplukova 1226/2 Brno', 'CZ8375000000000012345336', 4.80, 'veduci', 'LuxCinematic'); - -INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) -VALUES ('980614/6325', 'Milan', 'Orzsagh', 'Ludovita Stura 1425/1 Trencin', 'SK8215000000000012345671', 3.50, 'pokladnik', 'CineMax'); - -INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) -VALUES ('970104/1825', 'Gabriela', 'Janosikova', 'Svatoplukova 1526/3 Svinna', 'SK8123000000000012345336', 3.95, 'veduci', 'CineMax'); - - -INSERT INTO zanerFilmu (nazov, popis) -VALUES ('thriller', 'Zaner, ktory ma u divaka vyvola silne napatie a emocie. Pozostava z rychleho sledu udalosti a castej akcie'); - -INSERT INTO zanerFilmu (nazov, popis) -VALUES ('horror', 'Horror je zaner, ktorého cieľom je u diváka vyvolať pocit strachu a desu.'); - - -INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) -VALUES (film_seq.nextval,'Mission: Impossible', 2018, 'action, hollywood, tom cruise', 'Christopher McQuarrie', 14, 'USA', 16); - -INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) -VALUES (film_seq.nextval,'Us', 2019, 'horror, hollywood, tom Yahya Abdul-Mateen II', 'Jordan Peele', 95, 'USA', 18); - - -INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) -VALUES (premietaciaSala_seq.nextval,272, 'Benq W11000H', 'LuxCinematic'); - -INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) -VALUES (premietaciaSala_seq.nextval,272, 'Benq W11000H', 'LuxCinematic'); - -INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) -VALUES (premietaciaSala_seq.nextval,272, 'Benq Q22000H', 'CineMax'); - -INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) -VALUES (premietaciaSala_seq.nextval,272, 'Benq Q22000H', 'CineMax'); - -INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) -VALUES ('horror','2'); - -INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) -VALUES ('thriller','1'); - - -INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) -VALUES ('thriller','1'); - -INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) -VALUES (projekcia_seq.nextval,'CZ', 'anglicky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 1, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" - -INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) -VALUES (projekcia_seq.nextval,'EN', 'slovensky', to_timestamp('2019-11-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" - -INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) -VALUES (projekcia_seq.nextval,'EN', 'anglicky', to_timestamp('2019-12-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 1, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" - -INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) -VALUES (projekcia_seq.nextval,'CZ', 'slovensky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" - - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 22, 'n', 1); - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 23, 'n', 1); - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 24, 'n', 1); - - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 22, 'n', 2); - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 23, 'n', 2); - -INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) -VALUES (sedadlo_seq.nextval,5, 24, 'n', 2); - -INSERT INTO klient (klientID, heslo, vek, status) -VALUES ('login123', 'fakepassword', 35, 'invalid'); - -INSERT INTO klient (klientID, heslo, vek, status) -VALUES ('Peter24', 'fakestPasword', 15, 'student'); - -INSERT INTO klient (klientID, heslo, vek, status) -VALUES ('Dracula69', 'beutifulPasword', 95, 'dochodca'); - -INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) -VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 1, 1, 'login123'); - -INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) -VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.99, 2, 2, 'Peter24'); - -INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) -VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 3, 1, 'Dracula69'); - -INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) -VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.99, 3, 2, 'Peter24'); ---INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) ---VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); - -INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) -VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); - -INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) -VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:35:15', 'YYYY-MM-DD:HH24:MI:SS'), 79.99, 'student', 2, 1); - -INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) -VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:37:34', 'YYYY-MM-DD:HH24:MI:SS'), 69.99, 'invalid', 4, 3); -INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) -VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:39:34', 'YYYY-MM-DD:HH24:MI:SS'), 99.99, 'student', 5, 4); ------------------------------------INSERTION ENDS HERE------------ ---Urcenie spravcu databazy -GRANT ALL ON zamestnanec TO xkobyd00; -GRANT ALL ON multikino TO xkobyd00; -GRANT ALL ON rezervacia TO xkobyd00; -GRANT ALL ON zanerFilmu TO xkobyd00; -GRANT ALL ON film TO xkobyd00; -GRANT ALL ON sedadlo TO xkobyd00; -GRANT ALL ON vstupenka TO xkobyd00; -GRANT ALL ON premietaciaSala TO xkobyd00; -GRANT ALL ON projekcia TO xkobyd00; -GRANT ALL ON klient TO xkobyd00; - -COMMIT; - ---should or should not be this commented? will be sequence used then? -/* -DROP SEQUENCE film_seq; -DROP SEQUENCE premietaciaSala_seq; -DROP SEQUENCE projekcia_seq; -DROP SEQUENCE sedadlo_seq; -DROP SEQUENCE rezervacia_seq; -DROP SEQUENCE vstupenka_seq; -drop table Vstupenka; -drop table Klient; -drop table Sedadlo; -drop table Rezervacia; -drop table PremietaciaSala; -drop table Projekcia; - -drop table Film; -drop table zanerFilmu; -drop table multikino; -drop table Zamestnanec; -*/ - - +--Authors: Simon Kobyda, Michal Zelenak +-- VUT FIT 2019 IDS + +--pull datas into table + +BEGIN + EXECUTE immediate 'DROP TABLE Zamestnanec CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE ZanerFilmu CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Film CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Projekcia CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE PremietaciaSala CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Rezervacia CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Sedadlo CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Klient CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE tableZanerFilm CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Vstupenka CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP TABLE Multikino CASCADE CONSTRAINTS'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE film_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE premietaciaSala_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE projekcia_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE sedadlo_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE rezervacia_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ +BEGIN + EXECUTE immediate 'DROP SEQUENCE vstupenka_seq'; + EXCEPTION WHEN others THEN NULL; +END; +/ + +CREATE SEQUENCE film_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE premietaciaSala_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE projekcia_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE sedadlo_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE rezervacia_seq START WITH 1 INCREMENT BY 1; +CREATE SEQUENCE vstupenka_seq START WITH 1 INCREMENT BY 1; +--premietaciaSalaID + +CREATE TABLE multikino +( +nameCin VARCHAR2(50) PRIMARY KEY NOT NULL, +mesto VARCHAR2(180) NOT NULL, +ulica VARCHAR2(180) +); + +CREATE TABLE zamestnanec +( +rodneCislo CHAR(11) PRIMARY KEY NOT NULL, +meno VARCHAR2(120) NOT NULL, +priezvisko VARCHAR2(120) NOT NULL, +adresa VARCHAR2(80) NOT NULL, +cisloUctu CHAR(24), +hodinovaMzda NUMBER(4,2), +pozicia VARCHAR2(50) NOT NULL, +multikinoPraca VARCHAR2(50) NOT NULL, +CONSTRAINT poziciaEnum CHECK ( pozicia IN('pokladnik','veduci','majitel','vyhodeny')), +CONSTRAINT FKZamesMultikina FOREIGN KEY + (multikinoPraca) REFERENCES multikino + ON DELETE CASCADE, +CONSTRAINT CHECK_hodinovaMzda CHECK (hodinovaMzda>=0) +); + +CREATE TABLE zanerFilmu +(nazov VARCHAR2(20) NOT NULL, +popis VARCHAR2(300), +--film NUMBER, +CONSTRAINT PKzanerFilmu PRIMARY KEY (nazov) +); + + +CREATE TABLE film +(filmID INTEGER PRIMARY KEY NOT NULL, +nazovFilmu VARCHAR2(200) NOT NULL, +rok NUMBER(4,0), +klucSlova VARCHAR(300),--HERE +reziser VARCHAR2(70), +trvanie NUMBER(3,0), +krajinaPovodu VARCHAR2(50), +vekoveObmedzenie NUMBER(2,0) NOT NULL, +CONSTRAINT CHECK_rokDown CHECK (rok>=1850), +CONSTRAINT CHECK_rokUp CHECK (rok<3000), +CONSTRAINT CHECK_trvanie CHECK (trvanie>=0), +CONSTRAINT CHECK_vekObmedzUp CHECK (vekoveObmedzenie>=4), +CONSTRAINT CHECK_vekObmedzDown CHECK (vekoveObmedzenie<=60) +); + +CREATE TABLE tableZanerFilm +(nazovZanru VARCHAR2(20), +filmIdentifikator NUMBER, +CONSTRAINT FKFilmZaner FOREIGN KEY + (nazovZanru) REFERENCES zanerFilmu, +CONSTRAINT FKFilmID FOREIGN KEY + (filmIdentifikator) REFERENCES film +); + +CREATE TABLE premietaciaSala +(premietaciaSalaID INTEGER PRIMARY KEY, +kapacita NUMBER(4,0), +projektor VARCHAR2(50) NOT NULL, +kino VARCHAR2(50) NOT NULL, +CONSTRAINT FKKino FOREIGN KEY +(kino) REFERENCES multikino +ON DELETE CASCADE, +CONSTRAINT CHECK_kapacita CHECK (kapacita>0) +); + +CREATE TABLE projekcia +(projekciaID INTEGER PRIMARY KEY, +titulky CHAR(2), +jazyk VARCHAR2(80), +datum TIMESTAMP NOT NULL, +d3 CHAR(1) NOT NULL, +projekciaFilm NUMBER, +projekciaSala NUMBER, +CONSTRAINT FKProjekciaFilm FOREIGN KEY +(projekciaFilm) REFERENCES film + ON DELETE CASCADE, +CONSTRAINT FKSalaFilm FOREIGN KEY +(projekciaSala) REFERENCES premietaciaSala + ON DELETE CASCADE, +CONSTRAINT d3Check CHECK ( d3 IN('y','n')) +); + +CREATE TABLE sedadlo +(sedadloID INTEGER PRIMARY KEY, +rad NUMBER(4,0) NOT NULL, +poradie NUMBER(4,0) NOT NULL, +obsadenost CHAR(1) NOT NULL, +sedadloSala NUMBER NOT NULL, +CONSTRAINT FKSedadloSala FOREIGN KEY +(sedadloSala) REFERENCES premietaciaSala +ON DELETE CASCADE, +CONSTRAINT CHECK_poradie CHECK (poradie>0), +CONSTRAINT CHECK_rad CHECK (rad>0), +CONSTRAINT obsadenostCheck CHECK ( obsadenost IN('y','n')) +); + +CREATE TABLE klient +(klientID VARCHAR2(50) PRIMARY KEY NOT NULL, +heslo VARCHAR2(50) NOT NULL, +vek NUMBER(3,0) NOT NULL, +status VARCHAR2(10) NOT NULL, +CONSTRAINT statusEnum CHECK ( status IN('dieta','student','dochodca','dospely','invalid')), +CONSTRAINT CHECK_vek CHECK (vek>0) +); + + + +CREATE TABLE rezervacia +(rezervaciaID INTEGER PRIMARY KEY NOT NULL, +cas TIMESTAMP NOT NULL, +cena NUMBER(4,2) NOT NULL, +rezervProjekcia NUMBER, +rezervSedadlo NUMBER, +rezervKlient VARCHAR2(50), +CONSTRAINT FKRezervaciaProjekcia FOREIGN KEY + (rezervProjekcia) REFERENCES projekcia + ON DELETE CASCADE, +CONSTRAINT FKRezervaciaSedadlo FOREIGN KEY + (rezervSedadlo) REFERENCES sedadlo + ON DELETE CASCADE, +CONSTRAINT FKRezervaciaKlient FOREIGN KEY + (rezervKlient) REFERENCES klient + ON DELETE CASCADE, +CONSTRAINT CHECK_cena CHECK (cena>=0) +); + +CREATE TABLE vstupenka +(vstupenkaID INTEGER PRIMARY KEY, +casPredaja TIMESTAMP NOT NULL, +cena NUMBER(4,2) NOT NULL, +statusZakaznika VARCHAR2(10) NOT NULL, +vstupenkaSedadlo NUMBER, +vstupenkaProjekcia NUMBER NOT NULL, +CONSTRAINT FKVstupenkaSedadlo FOREIGN KEY + (vstupenkaSedadlo) REFERENCES sedadlo + ON DELETE CASCADE, +CONSTRAINT FKVstupenkaProjekcia FOREIGN KEY + (vstupenkaProjekcia) REFERENCES projekcia + ON DELETE CASCADE, +CONSTRAINT CHECK_cenaVstupenka CHECK (cena>=0), +CONSTRAINT CHECK_status CHECK ( statusZakaznika IN('dieta','student','dochodca','dospely','invalid')) +); + + --vstupenky po zmazani projekcie ostanu kvoli vrateniu penazi + + + + + + + +----------------------------INSERTION OF THE DATA STARTS HERE----- +INSERT INTO multikino (nameCin, mesto, ulica) +VALUES ('LuxCinematic', 'Brno', 'Metodejova'); + +INSERT INTO multikino (nameCin, mesto, ulica) +VALUES ('CineMax', 'Trencin', 'Stefanika'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('980604/6825', 'Andrej', 'Kristofan', 'Matice Slovenskej 1225/2 Brno', 'SK8975000000000012345671', 4.50, 'pokladnik', 'LuxCinematic'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('970904/3825', 'Michaela', 'Novakova', 'Svatoplukova 1226/2 Brno', 'CZ8375000000000012345336', 4.80, 'veduci', 'LuxCinematic'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('980614/6325', 'Milan', 'Orzsagh', 'Ludovita Stura 1425/1 Trencin', 'SK8215000000000012345671', 3.50, 'pokladnik', 'CineMax'); + +INSERT INTO zamestnanec (rodneCislo, meno, priezvisko, adresa, cisloUctu, hodinovaMzda, pozicia, multikinoPraca) +VALUES ('970104/1825', 'Gabriela', 'Janosikova', 'Svatoplukova 1526/3 Svinna', 'SK8123000000000012345336', 3.95, 'veduci', 'CineMax'); + + +INSERT INTO zanerFilmu (nazov, popis) +VALUES ('thriller', 'Zaner, ktory ma u divaka vyvola silne napatie a emocie. Pozostava z rychleho sledu udalosti a castej akcie'); + +INSERT INTO zanerFilmu (nazov, popis) +VALUES ('horror', 'Horror je zaner, ktor?ho cielom je u divaka vyvolat pocit strachu a desu.'); + +INSERT INTO zanerFilmu (nazov, popis) +VALUES ('psychologicky', 'Hlavnou temou je pojednavanie o lusdkom chovani, telesnom prezivani a dusevnych procesoch'); + +INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES (film_seq.nextval,'Mission: Impossible', 2018, 'action, hollywood, tom cruise', 'Christopher McQuarrie', 14, 'USA', 16); + +INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES (film_seq.nextval,'Split', 2016, 'James McAvoy, psychology, Usa', 'M. Night Shyamalan', 117, 'USA', 16); + + +INSERT INTO film (filmID,nazovFilmu, rok, klucSlova, reziser, trvanie, krajinaPovodu, vekoveObmedzenie) +VALUES (film_seq.nextval,'Us', 2019, 'horror, hollywood, tom Yahya Abdul-Mateen II', 'Jordan Peele', 95, 'USA', 18); + + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,272, 'Benq W11000H', 'LuxCinematic'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,282, 'Benq W11000H', 'LuxCinematic'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,274, 'Benq Q22000H', 'CineMax'); + +INSERT INTO premietaciaSala (premietaciaSalaID,kapacita, projektor, kino) +VALUES (premietaciaSala_seq.nextval,276, 'Benq Q22000H', 'CineMax'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('horror','2'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('thriller','1'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('thriller','2'); + +INSERT INTO tableZanerFilm (nazovZanru,filmIdentifikator) +VALUES ('psychologicky','3'); + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'SK', 'slovensky', to_timestamp('2019-12-26:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'n', 3, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'SK', 'slovensky', to_timestamp('2019-12-27:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 3, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'anglicky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'n', 1, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'anglicky', to_timestamp('2019-11-25:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'n', 2, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'EN', 'slovensky', to_timestamp('2019-11-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 1);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'EN', 'anglicky', to_timestamp('2019-12-24:22:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 1, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'slovensky', to_timestamp('2019-11-24:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + +INSERT INTO projekcia (projekciaID,titulky, jazyk, datum, d3, projekciaFilm, projekciaSala) +VALUES (projekcia_seq.nextval,'CZ', 'slovensky', to_timestamp('2019-11-26:20:45:00', 'YYYY-MM-DD:HH24:MI:SS'), 'y', 2, 2);--1 by projekciaFilm is first inserted film,next value 1{last one| is last inserted "Sala" + + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 22, 'n', 1); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 23, 'n', 1); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 24, 'n', 1); + + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 22, 'n', 2); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 23, 'n', 2); + +INSERT INTO sedadlo (sedadloID,rad, poradie, obsadenost, sedadloSala) +VALUES (sedadlo_seq.nextval,5, 24, 'n', 2); + +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('login123', 'fakepassword', 35, 'invalid'); + + +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('lolipoop', 'wordpass', 14, 'dieta'); + +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('Peter24', 'fakestPasword', 15, 'student'); + +INSERT INTO klient (klientID, heslo, vek, status) +VALUES ('Dracula69', 'beutifulPasword', 95, 'dochodca'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 1, 1, 'login123'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.99, 2, 2, 'Peter24'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:09:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 3, 1, 'Dracula69'); + +INSERT INTO rezervacia (rezervaciaID,cas, cena, rezervProjekcia, rezervSedadlo, rezervKlient) +VALUES (rezervacia_seq.nextval,to_timestamp('2019-11-21:19:22:43', 'YYYY-MM-DD:HH24:MI:SS'), 87.98, 3, 2, 'Peter24'); +--INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +--VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); + +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:32:05', 'YYYY-MM-DD:HH24:MI:SS'), 77.99, 'invalid', 1, 1); + +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:35:15', 'YYYY-MM-DD:HH24:MI:SS'), 79.99, 'student', 2, 1); + +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:37:34', 'YYYY-MM-DD:HH24:MI:SS'), 69.99, 'invalid', 4, 3); +INSERT INTO vstupenka (vstupenkaID,casPredaja, cena, statusZakaznika, vstupenkaSedadlo, vstupenkaProjekcia) +VALUES (vstupenka_seq.nextval,to_timestamp('2019-11-24:20:39:34', 'YYYY-MM-DD:HH24:MI:SS'), 99.99, 'student', 5, 4); +-----------------------------------INSERTION ENDS HERE------------ +--Urcenie spravcu databazy +GRANT ALL ON zamestnanec TO xkobyd00; +GRANT ALL ON multikino TO xkobyd00; +GRANT ALL ON rezervacia TO xkobyd00; +GRANT ALL ON zanerFilmu TO xkobyd00; +GRANT ALL ON film TO xkobyd00; +GRANT ALL ON sedadlo TO xkobyd00; +GRANT ALL ON vstupenka TO xkobyd00; +GRANT ALL ON premietaciaSala TO xkobyd00; +GRANT ALL ON projekcia TO xkobyd00; +GRANT ALL ON klient TO xkobyd00; + +COMMIT; + +--should or should not be this commented? will be sequence used then? +/* +DROP SEQUENCE film_seq; +DROP SEQUENCE premietaciaSala_seq; +DROP SEQUENCE projekcia_seq; +DROP SEQUENCE sedadlo_seq; +DROP SEQUENCE rezervacia_seq; +DROP SEQUENCE vstupenka_seq; +drop table Vstupenka; +drop table Klient; +drop table Sedadlo; +drop table Rezervacia; +drop table PremietaciaSala; +drop table Projekcia; + +drop table Film; +drop table zanerFilmu; +drop table multikino; +drop table Zamestnanec; +*/ + +--filmy ktore majú jeden zo zanrov horror +SELECT film.nazovFilmu, tablezanerfilm.nazovzanru +from tableZanerFilm,film +where (film.filmID=tableZanerFilm.filmIdentifikator +And tableZanerFilm.nazovZanru='horror' +); + +--zamestnanci multikina CineMax +SELECT zamestnanec.meno,zamestnanec.priezvisko, multikino.nameCin +from zamestnanec,multikino +where (multikino.nameCin='CineMax' +and zamestnanec.multikinoPraca=multikino.nameCin +); + +--pocet zanrov patriaci filmu -- ak chcem pocet zanrov konkretneho filmu, odkomentovat riadok 438 a zvolit film +select filmUs as film,count(zanerUs) as pocetZanrov +from( +SELECT film.nazovFilmu as filmUs,tableZanerFilm.nazovZanru as zanerUs +from tableZanerFilm,film +where (film.filmID=tableZanerFilm.filmIdentifikator +--and film.nazovFilmu='Us' +)) +group by(filmUs) +; + +--rezervacie jednotlivých klientov ktoré stáli najmenej +select login, min(cena) +from( +select klient.klientID as login,rezervacia.cena as cena +from klient, rezervacia +where( +klient.klientID=rezervacia.rezervKlient +)) +group by(login) +; + + +--- Filmy premietané v Sále 1, v 2d +select film.nazovFilmu,projekcia.d3,premietaciaSala.premietaciasalaid +from film,premietaciaSala,projekcia +where( premietaciasala.premietaciasalaid=1 +and film.filmID=projekcia.projekciaFilm +and projekcia.d3='n' +); + +-- projekcie ktoré majú aspoň jednu rezerváciu +select * +from projekcia +where exists( + select * + from rezervacia + where rezervacia.rezervprojekcia=projekcia.projekciaid +); + +--klienti so statusom inym ako student alebo invalid +select klient.klientID,klient.vek,klient.status +from klient +where( +klient.status in ('dieta','dochodca','dospely') +); + + +--multikiná ktoré používajú projektory benq w1100H a benq q2200H +select multikino.nameCin, premietaciaSala.projektor +from multikino, premietaciaSala +where (premietaciaSala.projektor IN ('Benq W11000H','Benq Q22000H') + and premietaciaSala.kino=multikino.nameCin +); + +--Dátumy 2d projekcií, filmov Us a Split +select filmNazov, datumFilmu +from( + select film.nazovfilmu as filmNazov,projekcia.datum as datumFilmu,projekcia.projekciafilm as idfilmu + from projekcia,film + where(projekcia.d3='n' + and projekcia.projekciafilm=film.filmID +)) +where filmNazov in ('Us', 'Split') +; + +--zamestnanci ktory pracuju na pozicii pokladnik, s vyuzitim IN a zanoreneho selectu +select zamestnanec.meno,zamestnanec.priezvisko,zamestnanec.hodinovaMzda,zamestnanec.pozicia,zamestnanec.multikinoPraca +from zamestnanec +where zamestnanec.hodinovaMzda IN +( select zamestnanec.hodinovaMzda as plat + from zamestnanec + where zamestnanec.pozicia='pokladnik' +); + + + + + + + From 56e296e5c9c794e726486ec0d42774720566af4a Mon Sep 17 00:00:00 2001 From: xDaile Date: Tue, 14 Apr 2020 19:30:27 +0200 Subject: [PATCH 19/19] uploading project to github --- README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..be65d74 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Principles-of-Programming-Languages-Project