Skrypt do projektu


DROP TABLE IF EXISTS film CASCADE;
DROP TABLE IF EXISTS sala CASCADE;
DROP TABLE IF EXISTS obsluga CASCADE;
DROP TABLE IF EXISTS rezerwacja CASCADE;
DROP TABLE IF EXISTS seans CASCADE;

CREATE TABLE film (
    tytul varchar(30) PRIMARY KEY NOT NULL,
    rok_produkcji int  NOT NULL check (rok_produkcji>1850),
    rezyser varchar(30)  NOT NULL,
    gatunek varchar(30)  NOT NULL,
    czas_wyswietlania int  NOT NULL check (czas_wyswietlania>0),
    opis varchar(300)
);
insert into film
values('film1',2000,'na','dramat',90,'opis');


CREATE TABLE obsluga (
    id serial PRIMARY KEY,
    imie varchar(15)  NOT NULL,
    nazwisko varchar(15)  NOT NULL,
    haslo varchar(15) NOT NULL
);
insert into obsluga(imie,nazwisko,haslo)
values('pracownik1','nazwisko','haslo');

CREATE TABLE sala (
    numer int PRIMARY KEY,
    liczba_miejsc int  NOT NULL check (liczba_miejsc>0)
);
insert into sala
values('1',30);

CREATE TABLE seans (
    id serial PRIMARY KEY,
    data date  NOT NULL,
    sala int  NOT NULL,
    godzina_rozpoczecia time  NOT NULL,
    film_tytul varchar(30)  NOT NULL,
    FOREIGN KEY (film_tytul) REFERENCES film on delete cascade on update cascade,
    FOREIGN KEY (sala) REFERENCES sala on delete cascade on update cascade
);

CREATE TABLE rezerwacja ( 
    id serial PRIMARY KEY,
    imie varchar(15)  NOT NULL,
    nazwisko varchar(15)  NOT NULL,
    seans_id int  NOT NULL,
    ile_miejsc int  NOT NULL check (ile_miejsc>0),
    akceptacja char(3) check (akceptacja in ('tak','nie')),
    
    FOREIGN KEY (seans_id) REFERENCES seans on delete cascade on update cascade
);