From 1fc1b0518b94b21e608dede38f86d322d2d36194 Mon Sep 17 00:00:00 2001 From: Jim Martens Date: Fri, 14 Apr 2017 13:50:15 +0200 Subject: [PATCH] Updated database schema Signed-off-by: Jim Martens --- 02/sql/schema.sql | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/02/sql/schema.sql b/02/sql/schema.sql index e7d330f..3bef4c5 100644 --- a/02/sql/schema.sql +++ b/02/sql/schema.sql @@ -1,23 +1,24 @@ 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, address VARCHAR(255) NOT NULL, - login VARCHAR(255) PRIMARY KEY NOT NULL, + login VARCHAR(255) UNIQUE NOT NULL, password VARCHAR(255) NULL ); 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, postalCode VARCHAR(5) NOT NULL, street VARCHAR(255) NOT NULL, streetNumber int NOT NULL, squareArea int NOT NULL, agent VARCHAR(255), - FOREIGN KEY (agent) REFERENCES EstateAgent(login) + FOREIGN KEY (agent) REFERENCES EstateAgent(ID) ); 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, rent int NOT NULL, rooms int NOT NULL, @@ -27,14 +28,14 @@ CREATE TABLE Apartment ( ); 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, garden SMALLINT NOT NULL, FOREIGN KEY (ID) REFERENCES Estate(ID) ); 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, place VARCHAR(255) NOT NULL ); @@ -55,7 +56,7 @@ CREATE TABLE TenancyContract ( ); 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, name VARCHAR(255) NOT NULL, address VARCHAR(255) NOT NULL