Bazy_danych_projekt/create_kino.sql
2019-06-11 14:30:15 +00:00

186 lines
7.1 KiB
Transact-SQL
Raw Blame History

CREATE DATABASE KINO;
GO
USE KINO;
GO
CREATE TABLE film (
kod_filmu VARCHAR(10) NOT NULL,
rodzaj_filmu VARCHAR(20),
tytul_filmu VARCHAR(50) NOT NULL UNIQUE
);
CREATE TABLE rodzaje (
rodzaj VARCHAR(20) NOT NULL
);
CREATE TABLE legenda (
skrot VARCHAR(5) NOT NULL,
opis TEXT NOT NULL
);
CREATE TABLE info (
kod_filmu VARCHAR(10) NOT NULL,
skrot VARCHAR(5) NOT NULL
);
CREATE TABLE seans (
kod_seansu INTEGER NOT NULL,
kod_filmu VARCHAR (10) NOT NULL,
nr_sali INTEGER NOT NULL,
data DATE NOT NULL,
czas_rozpoczecia TIME NOT NULL,
czas_zakonczenia TIME NOT NULL
);
CREATE TABLE sala (
nr_sali INTEGER NOT NULL,
liczba_miejsc INTEGER NOT NULL
);
CREATE TABLE tworcy (
kod_filmu VARCHAR (10) NOT NULL,
rezyser VARCHAR (40) NOT NULL,
scenariusz VARCHAR (40) NOT NULL,
obsada TEXT
);
CREATE TABLE zarezerwowane_miejsca (
kod_seansu INTEGER NOT NULL,
zarezerwowane_m INTEGER NOT NULL
);
ALTER TABLE film ADD PRIMARY KEY (kod_filmu);
ALTER TABLE rodzaje ADD PRIMARY KEY (rodzaj);
ALTER TABLE legenda ADD PRIMARY KEY (skrot);
ALTER TABLE info ADD PRIMARY KEY (kod_filmu,skrot);
ALTER TABLE tworcy ADD PRIMARY KEY (kod_filmu);
ALTER TABLE seans ADD PRIMARY KEY (kod_seansu);
ALTER TABLE sala ADD PRIMARY KEY (nr_sali);
ALTER TABLE film ADD FOREIGN KEY (rodzaj_filmu) REFERENCES rodzaje(rodzaj)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE info ADD FOREIGN KEY (kod_filmu) REFERENCES film(kod_filmu)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE info ADD FOREIGN KEY (skrot) REFERENCES legenda(skrot)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE tworcy ADD FOREIGN KEY (kod_filmu) REFERENCES film(kod_filmu)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE seans ADD FOREIGN KEY (kod_filmu) REFERENCES film(kod_filmu)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE seans ADD FOREIGN KEY (nr_sali) REFERENCES sala(nr_sali)
ALTER TABLE zarezerwowane_miejsca ADD FOREIGN KEY (kod_seansu) REFERENCES
seans(kod_seansu)
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE seans ADD CHECK (nr_sali IN (1,2,3,4));
ALTER TABLE seans ADD CHECK (czas_rozpoczecia<=czas_zakonczenia);
INSERT INTO sala (nr_sali,liczba_miejsc) VALUES (1,100);
INSERT INTO sala (nr_sali,liczba_miejsc) VALUES (2,125);
INSERT INTO sala (nr_sali,liczba_miejsc) VALUES (3,150);
INSERT INTO sala (nr_sali,liczba_miejsc) VALUES (4,200);
INSERT INTO rodzaje (rodzaj) VALUES ('sensacyjny'),('komedia'),('obyczajowy'),
('western'),('dramat'),('science-fiction'),('gangsterski'),('przygodowy');
INSERT INTO film (kod_filmu,rodzaj_filmu,tytul_filmu) VALUES
('PF1994QT','sensacyjny','Pulp Fiction');
INSERT INTO film (kod_filmu,rodzaj_filmu,tytul_filmu) VALUES
('OC1972FFC','gangsterski','Ojciec Chrzestny');
INSERT INTO film (kod_filmu,rodzaj_filmu,tytul_filmu) VALUES
('OBC1994BS','dramat','Orbitowanie bez cukru');
INSERT INTO film (kod_filmu,rodzaj_filmu,tytul_filmu) VALUES
('PZK2003GV','przygodowy','Piraci z Karaib<69>w');
INSERT INTO legenda (skrot,opis) VALUES ('3D', 'Seans w 3D');
INSERT INTO legenda (skrot,opis) VALUES ('48fps','Film emitowany w technologii
48fps');
INSERT INTO legenda (skrot,opis) VALUES ('18+','Film przeznaczony dla widz<64>w
doros<EFBFBD>ych');
INSERT INTO info (kod_filmu, skrot) VALUES ('PF1994QT', '18+');
INSERT INTO info (kod_filmu, skrot) VALUES ('OC1972FFC', '18+');
INSERT INTO info (kod_filmu, skrot) VALUES ('OBC1994BS', '48fps');
INSERT INTO info (kod_filmu, skrot) VALUES ('PZK2003GV', '3D');
INSERT INTO tworcy (kod_filmu,rezyser,scenariusz,obsada) VALUES
('PF1994QT','Quentin Tarantino','Quentin Tarantino','John Travolta, Samuel L.
Jackson, Bruce Willis, Uma Thurman');
INSERT INTO tworcy (kod_filmu,rezyser,scenariusz,obsada) VALUES
('OC1972FFC','Francis Ford Coppola','Mario Puzo','Marlon Brando, Al Pacino,
James Caan, Robert Duvall, Diane Keaton');
INSERT INTO tworcy (kod_filmu,rezyser,scenariusz,obsada) VALUES
('OBC1994BS','Ben Stiller','Helen Childres','Winona Ryder, Ethan Hawke, Ben
Stiller');
INSERT INTO tworcy (kod_filmu,rezyser,scenariusz,obsada) VALUES
('PZK2003GV','Gore Verbinski','Ted Elliot','Johnny Depp, Orlando Bloom, Keira
Knightley, Geoffrey Rush');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(1,'PF1994QT',1,'2014-01-01','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(2,'PF1994QT',1,'2014-01-01','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(3,'PF1994QT',1,'2014-01-02','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(4,'PF1994QT',1,'2014-01-02','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(5,'OC1972FFC',2,'2014-01-01','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(6,'OC1972FFC',2,'2014-01-01','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(7,'OC1972FFC',2,'2014-01-02','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(8,'OC1972FFC',2,'2014-01-02','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(9,'OC1972FFC',2,'2014-01-03','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(10,'OC1972FFC',2,'2014-01-03','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(11,'OBC1994BS',3,'2014-01-01','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(12,'OBC1994BS',3,'2014-01-01','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(13,'OBC1994BS',3,'2014-01-02','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(14,'OBC1994BS',3,'2014-01-02','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(15,'PZK2003GV',4,'2014-01-01','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(16,'PZK2003GV',4,'2014-01-01','19:45:00','22:20:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(17,'PZK2003GV',4,'2014-01-02','17:05:00','19:30:00');
INSERT INTO seans
(kod_seansu,kod_filmu,nr_sali,data,czas_rozpoczecia,czas_zakonczenia) VALUES
(18,'PZK2003GV',4,'2014-01-02','19:45:00','22:20:00');
INSERT INTO zarezerwowane_miejsca(kod_seansu,zarezerwowane_m)VALUES
(11,2)
INSERT INTO zarezerwowane_miejsca(kod_seansu,zarezerwowane_m)VALUES
(11,3)
SELECT * FROM film;
SELECT * FROM info;
SELECT * FROM legenda;
SELECT * FROM rodzaje;
SELECT * FROM sala;
SELECT * FROM seans;
SELECT * FROM tworcy;
SELECT * FROM zarezerwowane_miejsca;