Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE TABLE Funkcje (
- nazwa VARCHAR2(32)
- CONSTRAINT funkcje_pk PRIMARY KEY,
- min_myszy NUMBER(3)
- CONSTRAINT funkcje_min_nn NOT NULL
- CONSTRAINT funkcje_min_ch CHECK(min_myszy >= 0),
- max_myszy NUMBER(3)
- CONSTRAINT funkcje_max_nn NOT NULL
- CONSTRAINT funkcje_max_ch CHECK(max_myszy >= 0),
- CONSTRAINT funkcje_min_max_ch CHECK(min_myszy <= max_myszy)
- );
- -- Utworzenie niepelnej tabeli Bandy *brak klucza obcego
- CREATE TABLE Bandy (
- numer NUMBER(32)
- CONSTRAINT bandy_pk PRIMARY KEY,
- nazwa VARCHAR2(32)
- CONSTRAINT bandy_n_nn NOT NULL,
- pseudo_zarzadcy VARCHAR2(32)
- -- Tabela Koty jeszcze nie stworzona
- --CONSTRAINT bandy_pz_fk REFERENCES Koty(pseudonim)
- );
- ALTER TABLE Bandy
- ADD CONSTRAINT bandy_pz_fk
- FOREIGN KEY (pseudo_zarzadcy)
- REFERENCES Koty(pseudonim);
- --Utworzenie tabeli Koty
- CREATE TABLE Koty (
- pseudonim VARCHAR2(32)
- CONSTRAINT koty_pk PRIMARY KEY,
- plec CHAR(1)
- CONSTRAINT koty_plec_nn NOT NULL
- CONSTRAINT koty_plec_check CHECK(plec IN ('K', 'M')),
- data_przyjecia DATE
- CONSTRAINT koty_datap_nn NOT NULL,
- przydzial_myszy NUMBER(3)
- CONSTRAINT koty_przydzialm_nn NOT NULL
- CONSTRAINT koty_przydzialm_check CHECK(przydzial_myszy >= 0),
- pseudo_szefa VARCHAR2(32)
- CONSTRAINT koty_pseudoszefa_fk REFERENCES Koty(pseudonim),
- numer_bandy NUMBER(32)
- CONSTRAINT koty_numerbandy_fk REFERENCES Bandy(numer),
- nazwa_funkcji VARCHAR2(32)
- CONSTRAINT koty_nazwafunkcji_nn NOT NULL
- CONSTRAINT koty_nazwafunkcji_fk REFERENCES Funkcje(nazwa)
- );
- -- Dodanie klucza obcego(pseudo_zarzadcy od Koty(pseudonim)) do Bandy
- ALTER TABLE Bandy
- ADD CONSTRAINT bandy_pz_fk
- FOREIGN KEY (pseudo_zarzadcy)
- REFERENCES Koty(pseudonim);
- --Utworzenie tabeli Myszy
- CREATE TABLE Myszy (
- numer NUMBER(32)
- CONSTRAINT myszy_pk PRIMARY KEY,
- data_upolowania DATE
- CONSTRAINT myszy_dataupolowania_nn NOT NULL,
- waga NUMBER(3)
- CONSTRAINT myszy_waga_nn NOT NULL
- CONSTRAINT myszy_waga_check CHECK(waga >= 10),
- dlugosc NUMBER(2)
- CONSTRAINT myszy_dlugosc_nn NOT NULL
- CONSTRAINT myszy_dlugosc_check CHECK(dlugosc >= 5),
- data_wydania DATE,
- pseudo_lowcy VARCHAR2(32)
- CONSTRAINT myszy_pseudolowcy_nn NOT NULL
- CONSTRAINT myszy_pseudolowcy_fk REFERENCES Koty(pseudonim),
- pseudo_zjadacza VARCHAR(32)
- CONSTRAINT myszy_pseudozjadacza_fk REFERENCES Koty(pseudonim),
- CONSTRAINT myszy_dataupol_datawyd_ch CHECK(data_upolowania <= data_wydania)
- );
- --Utworzenie tabeli Wrogowie
- CREATE TABLE Wrogowie (
- imie VARCHAR2(32)
- CONSTRAINT wrogowie_pk PRIMARY KEY,
- stopien_wrogosci NUMBER(2)
- CONSTRAINT wrogowie_stopienwrogosci_nn NOT NULL
- CONSTRAINT wrogowie_stopienwrogosci_ch CHECK(stopien_wrogosci BETWEEN 1 AND 10),
- gatunek VARCHAR(32)
- );
- --Utworzenie tabeli Gratyfikacje
- CREATE TABLE Gratyfikacje (
- nazwa VARCHAR2(32)
- CONSTRAINT gratyfikacje_pk PRIMARY KEY,
- sila NUMBER(2)
- CONSTRAINT gratyfikacje_sila_nn NOT NULL
- CONSTRAINT gratyfikacje_sila_check CHECK(sila BETWEEN 1 AND 10)
- );
- --Utworzenie tabeli Tereny
- CREATE TABLE Tereny (
- nazwa VARCHAR2(32)
- CONSTRAINT tereny_pk PRIMARY KEY
- );
- --Utworzenie tabeli Tereny_band gdzie klucz obcy sklada sie z dwoch elementow(powstala ze zwiazku)
- CREATE TABLE Tereny_band (
- nazwa VARCHAR2(32)
- CONSTRAINT tereny_nazwa_fk REFERENCES Tereny(nazwa),
- numer NUMBER(32)
- CONSTRAINT tereny_numer_fk REFERENCES Bandy(numer),
- CONSTRAINT tereny_fk_pk PRIMARY KEY(nazwa, numer)
- );
- --Utworzenie tabeli Gratyfikacje wrogow
- CREATE TABLE Gratyfikacje_wrogow (
- imie VARCHAR2(32)
- CONSTRAINT gratywrog_imie_fk REFERENCES Wrogowie(imie),
- nazwa VARCHAR2(32)
- CONSTRAINT gratywrog_nazwa_fk REFERENCES Gratyfikacje(nazwa),
- CONSTRAINT gratywrog_pk PRIMARY KEY(imie, nazwa)
- );
- --Utworzenie tabeli Incydenty
- CREATE TABLE Incydenty (
- pseudonim VARCHAR2(32)
- CONSTRAINT incydenty_pseudo_fk REFERENCES Koty(pseudonim),
- imie VARCHAR2(32)
- CONSTRAINT incydenty_imie_fk REFERENCES Wrogowie(imie),
- data DATE
- CONSTRAINT incydenty_data_nn NOT NULL,
- opis VARCHAR2(256)
- CONSTRAINT incydenty_opis_nn NOT NULL,
- CONSTRAINT incydenty_pk PRIMARY KEY(pseudonim, imie)
- );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement