Updated database schema

Signed-off-by: Jim Martens <github@2martens.de>
This commit is contained in:
2017-04-14 13:50:15 +02:00
parent ed9af4c313
commit 1fc1b0518b

View File

@ -1,23 +1,24 @@
CREATE TABLE EstateAgent ( CREATE TABLE EstateAgent (
ID INT NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
address VARCHAR(255) NOT NULL, address VARCHAR(255) NOT NULL,
login VARCHAR(255) PRIMARY KEY NOT NULL, login VARCHAR(255) UNIQUE NOT NULL,
password VARCHAR(255) NULL password VARCHAR(255) NULL
); );
CREATE TABLE Estate ( CREATE TABLE Estate (
ID int NOT NULL PRIMARY KEY, ID int NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
city VARCHAR(255) NOT NULL, city VARCHAR(255) NOT NULL,
postalCode VARCHAR(5) NOT NULL, postalCode VARCHAR(5) NOT NULL,
street VARCHAR(255) NOT NULL, street VARCHAR(255) NOT NULL,
streetNumber int NOT NULL, streetNumber int NOT NULL,
squareArea int NOT NULL, squareArea int NOT NULL,
agent VARCHAR(255), agent VARCHAR(255),
FOREIGN KEY (agent) REFERENCES EstateAgent(login) FOREIGN KEY (agent) REFERENCES EstateAgent(ID)
); );
CREATE TABLE Apartment ( CREATE TABLE Apartment (
ID int NOT NULL PRIMARY KEY, ID int NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
floor int NOT NULL, floor int NOT NULL,
rent int NOT NULL, rent int NOT NULL,
rooms int NOT NULL, rooms int NOT NULL,
@ -27,14 +28,14 @@ CREATE TABLE Apartment (
); );
CREATE TABLE House ( CREATE TABLE House (
ID int NOT NULL PRIMARY KEY, ID int NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
price int NOT NULL, price int NOT NULL,
garden SMALLINT NOT NULL, garden SMALLINT NOT NULL,
FOREIGN KEY (ID) REFERENCES Estate(ID) FOREIGN KEY (ID) REFERENCES Estate(ID)
); );
CREATE TABLE Contract ( CREATE TABLE Contract (
contractNumber int NOT NULL PRIMARY KEY, contractNumber int NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
date DATE NOT NULL, date DATE NOT NULL,
place VARCHAR(255) NOT NULL place VARCHAR(255) NOT NULL
); );
@ -55,7 +56,7 @@ CREATE TABLE TenancyContract (
); );
CREATE TABLE Person ( CREATE TABLE Person (
ID int NOT NULL PRIMARY KEY, ID int NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NOCYCLE),
firstName VARCHAR(255) NOT NULL, firstName VARCHAR(255) NOT NULL,
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
address VARCHAR(255) NOT NULL address VARCHAR(255) NOT NULL