From 6863b838c5f2aedd7abd73c3b9233b0b86f6aef0 Mon Sep 17 00:00:00 2001 From: Sara Djordjevic <sarasdj@stud.ntnu.no> Date: Mon, 22 Jan 2024 12:58:31 +0100 Subject: [PATCH] add: sql schema --- schema.sql | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 schema.sql diff --git a/schema.sql b/schema.sql new file mode 100644 index 00000000..53142222 --- /dev/null +++ b/schema.sql @@ -0,0 +1,49 @@ +CREATE TABLE Zone ( + ZoneID INT PRIMARY KEY, + Area INT NULL, + Depth INT, + ReportID INT, + SensorID INT, + FOREIGN KEY (ReportID) REFERENCES Report(ReportID), + FOREIGN KEY (SensorID) REFERENCES Sensor(SensorID) +); + +CREATE TABLE Sensor ( + SensorID INT PRIMARY KEY, + SensorType CHAR, + Latitued DECIMAL(9,6) NOT NULL, + Longitude DECIMAL(9,6) NOT NULL, + ServiceStart DATETIME, + Active BOOLEAN NOT NULL +); + +CREATE TABLE Report ( + ReportID INT PRIMARY KEY, + Latitued DECIMAL(9,6) NOT NULL, + Longitude DECIMAL(9,6) NOT NULL, + DateTime DATETIME NOT NULL, + MeasuredThickes NULL NOT NULL, + CalculatedThickness INT NOT NULL, + SafetyAssesment CHAR NOT NULL, + Temperature FLOAT, + Humidity FLOAT, + Percipitation FLOAT +); + +-- Specialization of Report entity +CREATE TABLE AnalogReport ( + ReportID INT PRIMARY KEY, + Username CHAR PRIMARY KEY, + Method CHAR NOT NULL, + Message CHAR, + FOREIGN KEY (ReportID) REFERENCES Report(ReportID) +); + + +-- Specialization of Report entity +CREATE TABLE SensorReport ( + ReportID INT PRIMARY KEY, + SensorID INT PRIMARY KEY, + FOREIGN KEY (ReportID) REFERENCES Report(ReportID), + FOREIGN KEY (SensorID) REFERENCES Sensor(SensorID) +); \ No newline at end of file -- GitLab