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