/* ---------------------------------------------------------------------- */ /* Script generated with: DeZign for Databases v4.1.3 */ /* Target DBMS: Oracle 10g */ /* Project file: Projekt.dez */ /* Project name: */ /* Author: */ /* Script type: Database creation script */ /* Created on: 2006-12-05 05:31 */ /* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */ /* Tables */ /* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */ /* Add table "Uzytkownik" */ /* ---------------------------------------------------------------------- */ CREATE TABLE Uzytkownik ( userid INTEGER CONSTRAINT NN_userid NOT NULL, login VARCHAR2(40) CONSTRAINT NN_login NOT NULL, nazwaekr VARCHAR2(40), imie VARCHAR2(40), nazwisko VARCHAR2(40), miasto VARCHAR2(40), kraj VARCHAR2(40), email VARCHAR2(50) CONSTRAINT NN_email NOT NULL, omnie CLOB, haslo VARCHAR2(40) CONSTRAINT NN_haslo NOT NULL, dataur DATE, ogolne CLOB, avatar BLOB, CONSTRAINT PK_Uzytkownik PRIMARY KEY (userid) ); /* ---------------------------------------------------------------------- */ /* Add table "Przedmiot" */ /* ---------------------------------------------------------------------- */ CREATE TABLE Przedmiot ( nazwa VARCHAR2(40), opis NCHAR(2000), zdjecie BLOB, autor NVARCHAR2(40), thingid INTEGER CONSTRAINT NN_thingid NOT NULL, userid INTEGER CONSTRAINT NN_userid NOT NULL, grupid INTEGER, CONSTRAINT PK_Przedmiot PRIMARY KEY (thingid) ); /* ---------------------------------------------------------------------- */ /* Add table "Impreza" */ /* ---------------------------------------------------------------------- */ CREATE TABLE Impreza ( nazwa VARCHAR2(40), Impid INTEGER CONSTRAINT NN_Impid NOT NULL, data TIMESTAMP, miejsce CHARACTER VARYING(40), maxosob INTEGER, ograniczenia VARCHAR2(40), userid INTEGER, grupid INTEGER CONSTRAINT NN_grupid NOT NULL, CONSTRAINT PK_Impreza PRIMARY KEY (Impid) ); /* ---------------------------------------------------------------------- */ /* Add table "KomentarzPrzedmiot" */ /* ---------------------------------------------------------------------- */ CREATE TABLE KomentarzPrzedmiot ( Komentid INTEGER CONSTRAINT NN_Komentid NOT NULL, tresc NCHAR(2000), userid INTEGER CONSTRAINT NN_userid NOT NULL, thingid INTEGER CONSTRAINT NN_thingid NOT NULL, Komentid1 INTEGER, CONSTRAINT PK_KomentarzPrzedmiot PRIMARY KEY (Komentid) ); /* ---------------------------------------------------------------------- */ /* Add table "KomentarzImprezy" */ /* ---------------------------------------------------------------------- */ CREATE TABLE KomentarzImprezy ( Komentid INTEGER CONSTRAINT NN_Komentid NOT NULL, tresc NCHAR(20), userid INTEGER CONSTRAINT NN_userid NOT NULL, Komentid1 INTEGER, Impid INTEGER CONSTRAINT NN_Impid NOT NULL, Impid1 INTEGER, CONSTRAINT PK_KomentarzImprezy PRIMARY KEY (Komentid, Impid) ); /* ---------------------------------------------------------------------- */ /* Add table "KomentarzUzytkownika" */ /* ---------------------------------------------------------------------- */ CREATE TABLE KomentarzUzytkownika ( userid INTEGER CONSTRAINT NN_userid NOT NULL, userid1 INTEGER CONSTRAINT NN_userid1 NOT NULL, Tresc NCHAR(20) CONSTRAINT NN_Tresc NOT NULL, komentid INTEGER CONSTRAINT NN_komentid NOT NULL, komentid1 INTEGER, CONSTRAINT PK_KomentarzUzytkownika PRIMARY KEY (komentid) ); /* ---------------------------------------------------------------------- */ /* Add table "Wiadomosc" */ /* ---------------------------------------------------------------------- */ CREATE TABLE Wiadomosc ( userid INTEGER CONSTRAINT NN_userid NOT NULL, userid1 INTEGER CONSTRAINT NN_userid1 NOT NULL, tresc NCHAR(20) CONSTRAINT NN_tresc NOT NULL, przeczytana SMALLINT, data TIMESTAMP CONSTRAINT NN_data NOT NULL, CONSTRAINT PK_Wiadomosc PRIMARY KEY (userid, userid1, data) ); /* ---------------------------------------------------------------------- */ /* Add table "GrupaPrzedmiotów" */ /* ---------------------------------------------------------------------- */ CREATE TABLE GrupaPrzedmiotów ( nazwa VARCHAR2(40) CONSTRAINT NN_nazwa NOT NULL, grupid INTEGER CONSTRAINT NN_grupid NOT NULL, grupid1 INTEGER, CONSTRAINT PK_GrupaPrzedmiotów PRIMARY KEY (grupid) ); /* ---------------------------------------------------------------------- */ /* Add table "GrupaImprez" */ /* ---------------------------------------------------------------------- */ CREATE TABLE GrupaImprez ( grupid INTEGER CONSTRAINT NN_grupid NOT NULL, nazwa VARCHAR2(40), CONSTRAINT PK_GrupaImprez PRIMARY KEY (grupid) ); /* ---------------------------------------------------------------------- */ /* Add table "GrupaUzytk" */ /* ---------------------------------------------------------------------- */ CREATE TABLE GrupaUzytk ( Nazwa VARCHAR2(40), Grupid INTEGER CONSTRAINT NN_Grupid NOT NULL, Grupid1 INTEGER, CONSTRAINT PK_GrupaUzytk PRIMARY KEY (Grupid) ); /* ---------------------------------------------------------------------- */ /* Add table "UserIdzieNaImpre" */ /* ---------------------------------------------------------------------- */ CREATE TABLE UserIdzieNaImpre ( userid INTEGER CONSTRAINT NN_userid NOT NULL, Impid INTEGER CONSTRAINT NN_Impid NOT NULL, CONSTRAINT PK_UserIdzieNaImpre PRIMARY KEY (userid, Impid) ); /* ---------------------------------------------------------------------- */ /* Add table "ZnajomoscUzytko" */ /* ---------------------------------------------------------------------- */ CREATE TABLE ZnajomoscUzytko ( userid INTEGER CONSTRAINT NN_userid NOT NULL, userid1 INTEGER CONSTRAINT NN_userid1 NOT NULL, CONSTRAINT PK_ZnajomoscUzytko PRIMARY KEY (userid, userid1) ); /* ---------------------------------------------------------------------- */ /* Add table "OcenaImprezy" */ /* ---------------------------------------------------------------------- */ CREATE TABLE OcenaImprezy ( userid INTEGER CONSTRAINT NN_userid NOT NULL, ocena SMALLINT, Impid INTEGER CONSTRAINT NN_Impid NOT NULL, CONSTRAINT PK_OcenaImprezy PRIMARY KEY (Impid) ); /* ---------------------------------------------------------------------- */ /* Add table "Uzytkownik_GrupaUzytk" */ /* ---------------------------------------------------------------------- */ CREATE TABLE Uzytkownik_GrupaUzytk ( userid INTEGER CONSTRAINT NN_userid NOT NULL, Grupid INTEGER CONSTRAINT NN_Grupid NOT NULL, CONSTRAINT PK_Uzytkownik_GrupaUzytk PRIMARY KEY (userid, Grupid) ); /* ---------------------------------------------------------------------- */ /* Foreign key constraints */ /* ---------------------------------------------------------------------- */ ALTER TABLE Przedmiot ADD CONSTRAINT Wlasnosc FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE Przedmiot ADD CONSTRAINT Posiadanie FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE Przedmiot ADD CONSTRAINT GrupaPrzedmiotów_Przedmiot FOREIGN KEY (grupid) REFERENCES GrupaPrzedmiotów (grupid); ALTER TABLE Impreza ADD CONSTRAINT Uzytkownik_Impreza FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE Impreza ADD CONSTRAINT Nalezy FOREIGN KEY (grupid) REFERENCES GrupaImprez (grupid); ALTER TABLE KomentarzPrzedmiot ADD CONSTRAINT Uzytkownik_KomentarzPrzedmiot FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE KomentarzPrzedmiot ADD CONSTRAINT Przedmiot_KomentarzPrzedmiot FOREIGN KEY (thingid) REFERENCES Przedmiot (thingid); ALTER TABLE KomentarzPrzedmiot ADD CONSTRAINT KomentarzPrzed_KomentarzPrzed FOREIGN KEY (Komentid1) REFERENCES KomentarzPrzedmiot (Komentid); ALTER TABLE KomentarzImprezy ADD CONSTRAINT Uzytkownik_KomentarzImprezy FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE KomentarzImprezy ADD CONSTRAINT Impreza_KomentarzImprezy FOREIGN KEY (Impid) REFERENCES Impreza (Impid); ALTER TABLE KomentarzImprezy ADD CONSTRAINT KomentarzImpr_KomImpr FOREIGN KEY (Komentid1, Impid1) REFERENCES KomentarzImprezy (Komentid,Impid); ALTER TABLE KomentarzUzytkownika ADD CONSTRAINT KomentarzUzytkownik FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE KomentarzUzytkownika ADD CONSTRAINT Uzytkownik_komentarzU FOREIGN KEY (userid1) REFERENCES Uzytkownik (userid); ALTER TABLE KomentarzUzytkownika ADD CONSTRAINT KomentarzU_komentarzU FOREIGN KEY (komentid1) REFERENCES KomentarzUzytkownika (komentid); ALTER TABLE Wiadomosc ADD CONSTRAINT UzytkownikWiadomosc FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE Wiadomosc ADD CONSTRAINT Uzytkownik_Wiadomosc FOREIGN KEY (userid1) REFERENCES Uzytkownik (userid); ALTER TABLE GrupaPrzedmiotów ADD CONSTRAINT Podgrupa FOREIGN KEY (grupid1) REFERENCES GrupaPrzedmiotów (grupid); ALTER TABLE GrupaUzytk ADD CONSTRAINT GrupaUzytk_GrupaUzytk FOREIGN KEY (Grupid1) REFERENCES GrupaUzytk (Grupid); ALTER TABLE UserIdzieNaImpre ADD CONSTRAINT Uzytkownik_UserIdzieNaImpre FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE UserIdzieNaImpre ADD CONSTRAINT Impreza_UserIdzieNaImpre FOREIGN KEY (Impid) REFERENCES Impreza (Impid); ALTER TABLE ZnajomoscUzytko ADD CONSTRAINT Znajomosc FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE ZnajomoscUzytko ADD CONSTRAINT Znajomosc2 FOREIGN KEY (userid1) REFERENCES Uzytkownik (userid); ALTER TABLE OcenaImprezy ADD CONSTRAINT Ocena1 FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE OcenaImprezy ADD CONSTRAINT Ocena2 FOREIGN KEY (Impid) REFERENCES Impreza (Impid); ALTER TABLE Uzytkownik_GrupaUzytk ADD CONSTRAINT UzytkownikDoGrupy FOREIGN KEY (userid) REFERENCES Uzytkownik (userid); ALTER TABLE Uzytkownik_GrupaUzytk ADD CONSTRAINT GrupaDoUzytkownikia FOREIGN KEY (Grupid) REFERENCES GrupaUzytk (Grupid);