CREATE TABLE czytelnicy (
id_czytelnika CHAR(5),
nazwisko VARCHAR(50) CONSTRAINT nazwisko_NN NOT NULL,
imie VARCHAR(30) CONSTRAINT imie_NN NOT NULL,
pesel CHAR(11) CONSTRAINT pesel_NN NOT NULL,
data_ur DATE CONSTRAINT data_NN NOT NULL,
plec CHAR(1),
telefon VARCHAR(10),
CONSTRAINT czytelnicy_id_PK PRIMARY KEY(id_czytelnika),
CONSTRAINT czytelnicy_id_CH CHECK(id_czytelnika REGEXP_LIKE '[A-Z][A-Z][0-9][0-9][0-9]'), /*źle*/
CONSTRAINT plec_CH CHECK(plec IN('K','M'))
);
CREATE TABLE wydawnictwa (
id_wydawnictwa NUMBER,
nazwa VARCHAR(50) CONSTRAINT wydawnictwa_nazwa_NN NOT NULL,
miasto VARCHAR(50) CONSTRAINT wydawnictwa_miasto_NN NOT NULL,
telefon VARCHAR(10),
CONSTRAINT wydawnictwa_id_PK PRIMARY KEY(id_wydawnictwa)
);
CREATE TABLE pracownicy (
id_pracownika NUMBER,
nazwisko VARCHAR(50) CONSTRAINT pracownicy_nazwisko_NN NOT NULL,
imie VARCHAR(30) CONSTRAINT pracownicy_imie_NN NOT NULL,
data_ur DATE CONSTRAINT pracownicy_dataur_NN NOT NULL,
data_zatr DATE,
szef_id NUMBER,
plec CHAR(1) CONSTRAINT pracownicy_plec_NN NOT NULL,
CONSTRAINT pracownicy_id_PK PRIMARY KEY(id_pracownika),
CONSTRAINT pracownicy_idszefa_FK FOREIGN KEY(szef_id) REFERENCES pracownicy(id_pracownika),
CONSTRAINT pracownicy_plec_CH CHECK(plec IN('K','M')),
CONSTRAINT pracownicy_datazatr_CH CHECK(data_ur
);
CREATE TABLE ksiazki (
sygn NUMBER,
id_wyd NUMBER,
tytul VARCHAR(50) CONSTRAINT ksiazki_tytol_NN NOT NULL,
cena NUMBER(5,2) CONSTRAINT ksiazki_cena_NN NOT NULL,
strony NUMBER,
gatunek VARCHAR(25),
CONSTRAINT ksiazki_sygn_PK PRIMARY KEY(sygn),
CONSTRAINT ksiazki_idwyd_FK FOREIGN KEY(id_wyd) REFERENCES WYDAWNICTWA(id_wydawnictwa),
CONSTRAINT ksiazki_cena_CH CHECK(cena>0),
CONSTRAINT ksiazki_gatunel_CH CHECK(gatunek IN('powieść','powieść historyczna','dla dzieci','wiersze','kryminal','powieść science fiction','książka naukowa'))
);
CREATE TABLE wypozyczenia (
id_w NUMBER,
sygn NUMBER,
id_cz CHAR(5),
id_p NUMBER,
data_w DATE CONSTRAINT wypozyczenia_dataw_NN NOT NULL,
data_z DATE,
kara NUMBER(5,2) DEFAULT 0,
CONSTRAINT wypozyczenia_id_PK PRIMARY KEY(id_w),
CONSTRAINT wypozyczenia_sygn_FK FOREIGN KEY(sygn) REFERENCES KSIAZKI(sygn),
CONSTRAINT wypozyczenia_idczyt_FK FOREIGN KEY(id_cz) REFERENCES CZYTELNICY(id_czytelnika),
CONSTRAINT wypozyczenia_idprac_FK FOREIGN KEY(id_p) REFERENCES PRACOWNICY(id_pracownika),
CONSTRAINT wypozyczenia_dataw_CH CHECK(data_wCONSTRAINT wypozyczenia_kara_CH CHECK(kara>0)
);
Wyszukiwarka
Podobne podstrony:
Podstawy baz danych Zajecia 1 z SQL Tabela STUDENT
Podstawy baz danych zajecia 3 z sql
Podstawy baz danych sql 19 11
Podstawy baz danych 12 11 SQL
IWZ 2 Podstawy baz danych
22 Część VII Udostępnianie baz danych w sieci WWW Podsta
Wprowadzenie do baz danych
2004 11 Porównanie serwerów relacyjnych baz danych Open Source [Bazy Danych]
Analiza baz danych na temat materiałów betonopodobnych
wprowadzenie do baz danych
system baz danych
więcej podobnych podstron