% createdb wypozyczalnia
% psql wypozyczalnia
SET client_encoding='utf-8';
CREATE TABLE klient
(
nr serial ,
nazwisko varchar(32) not null,
imie varchar(32) not null,
kod_pocztowy char(6) ,
miasto varchar(32) ,
ulica_dom varchar(32) ,
telefon varchar(11) ,
CONSTRAINT klient_nr_pk PRIMARY KEY(nr)
);
CREATE TABLE wypozyczenie
(
nr serial ,
klient_nr integer not null,
kopia_nr integer not null,
data_wypozyczenia date not null,
data_zwrotu_planowana date not null,
data_zwrotu_faktyczna date not null,
kwota_wplacona numeric(5,2) ,
kwota_nalezna numeric(5,2) ,
CONSTRAINT klient_nr_fk FOREIGN KEY(klient_nr)
REFERENCES klient(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
CONSTRAINT kopia_nr_fk FOREIGN KEY(kopia_nr)
REFERENCES kopia(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
CREATE TABLE rezerwacja
(
nr serial ,
klient_nr integer not null,
film_nr integer not null,
data_rezerwacji date not null,
okres_rezerwacji date not null,
CONSTRAINT klient_nr_fk FOREIGN KEY(klient_nr)
REFERENCES klient(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
CONSTRAINT film_nr_fk FOREIGN KEY(film_nr)
REFERENCES film(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
CREATE TABLE kopia
(
nr serial ,
film_nr integer not null,
CONSTRAINT kopia_nr_pk PRIMARY KEY(nr),
CONSTRAINT film_nr_fk FOREIGN KEY(film_nr)
REFERENCES film(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
CREATE TABLE film
(
nr serial ,
tytul varchar(64) not null,
gatunek varchar(16) ,
czas_trwania numeric(4) ,
rok_produkcji numeric(4) ,
kraj_produkcji varchar(16) ,
cena numeric(3,2) not null,
aktor_nr integer ,
rezyser_nr integer ,
opis varchar(128) ,
CONSTRAINT film_nr_pk PRIMARY KEY(nr),
CONSTRAINT aktor_nr_fk FOREIGN KEY(aktor_nr)
REFERENCES aktor(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
CONSTRAINT rezyser_nr_fk FOREIGN KEY(rezyser_nr)
REFERENCES rezyser(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
CREATE TABLE aktor
(
nr serial ,
nazwisko varchar(32) not null,
imie varchar(16) ,
kraj varchar(16) ,
film_nr integer ,
CONSTRAINT aktor_nr_pk PRIMARY KEY(nr),
CONSTRAINT film_nr_fk FOREIGN KEY(film_nr)
REFERENCES aktor(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
CREATE TABLE rezyser
(
nr serial ,
nazwisko varchar(32) not null,
imie varchar(16) ,
kraj varchar(16) ,
film_nr integer ,
CONSTRAINT rezyser_nr_pk PRIMARY KEY(nr),
CONSTRAINT film_nr_fk FOREIGN KEY(film_nr)
REFERENCES aktor(nr)
ON UPDATE CASCADE ON DELETE CASCADE,
);
Wyszukiwarka
Podobne podstrony:
ćwiczenie5 tabeletabeleaccess st2008z lab02 tabeletabele2zal paroc tabele do rozpwody rzeki tabele13 15tabele (9)PUMA Tabele rozmiarówTabele pomiarowetabele do obliczeń więźby dachowejTabele niem samplertabele mm 2014więcej podobnych podstron