fix: add postgres backend

changes:
- Add postgres backend
- Modified or added table attributes.
  UpdateDate, ForeignKeys, Booleans
- Fix test for sqlite and postgres. Compare json instead the struct.
This commit is contained in:
2020-06-01 22:36:57 +02:00
parent a1c28a0a2e
commit 4931c63c10
46 changed files with 822 additions and 245 deletions

View File

@ -1,6 +1,7 @@
CREATE TABLE IF NOT EXISTS devices (
device_id CHAR(37) PRIMARY KEY,
device_id CHAR(36) PRIMARY KEY,
device_name VARCHAR(64) NOT NULL,
device_location VARCHAR(64),
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_date TIMESTAMP
);

View File

@ -1,8 +1,8 @@
CREATE TABLE IF NOT EXISTS humidities (
id CHAR(37) PRIMARY KEY,
id CHAR(36) PRIMARY KEY,
value NUMERIC(10,3) NOT NULL,
date TIMESTAMP NOT NULL,
sensor_id CHAR(37) NOT NULL,
sensor_id CHAR(36) NOT NULL,
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_date TIMESTAMP,
FOREIGN KEY(sensor_id) REFERENCES sensors(sensor_id)

View File

@ -1,8 +1,8 @@
CREATE TABLE IF NOT EXISTS pressures (
id CHAR(37) PRIMARY KEY,
id CHAR(36) PRIMARY KEY,
value NUMERIC(10,3) NOT NULL,
date TIMESTAMP NOT NULL,
sensor_id CHAR(37) NOT NULL,
sensor_id CHAR(36) NOT NULL,
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_date TIMESTAMP,
FOREIGN KEY(sensor_id) REFERENCES sensors(sensor_id)

View File

@ -1,5 +1,5 @@
CREATE TABLE IF NOT EXISTS sensors (
sensor_id CHAR(37) PRIMARY KEY,
sensor_id CHAR(36) PRIMARY KEY,
sensor_name VARCHAR(64) NOT NULL,
sensor_location VARCHAR(64),
wire_id VARCHAR(64),
@ -9,7 +9,8 @@ CREATE TABLE IF NOT EXISTS sensors (
sensor_model VARCHAR(16) NOT NULL,
sensor_enabled INTEGER(1) DEFAULT 1 NOT NULL,
tick_duration VARCHAR(6) NOT NULL,
device_id CHAR(37) NOT NULL,
device_id CHAR(36) NOT NULL,
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_date TIMESTAMP,
FOREIGN KEY(device_id) REFERENCES devices(device_id)
);

View File

@ -1,8 +1,8 @@
CREATE TABLE IF NOT EXISTS temperatures (
id CHAR(37) PRIMARY KEY,
id CHAR(36) PRIMARY KEY,
value NUMERIC(10,3) NOT NULL,
date TIMESTAMP NOT NULL,
sensor_id CHAR(37) NOT NULL,
sensor_id CHAR(36) NOT NULL,
creation_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_date TIMESTAMP,
FOREIGN KEY(sensor_id) REFERENCES sensors(sensor_id)

View File

@ -2,6 +2,7 @@ INSERT INTO devices (
device_id,
device_name,
device_location,
creation_date
creation_date,
update_date
)
VALUES ($1, $2, $3, $4);
VALUES ($1, $2, $3, $4, $5);

View File

@ -10,6 +10,7 @@ INSERT INTO sensors (
sensor_enabled,
tick_duration,
device_id,
creation_date
creation_date,
update_date
)
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12);
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13);

View File

@ -2,7 +2,8 @@ SELECT
device_id,
device_name,
device_location,
creation_date
creation_date,
update_date
FROM
devices
WHERE device_id = $1;

View File

@ -2,6 +2,7 @@ SELECT
device_id,
device_name,
device_location,
creation_date
creation_date,
update_date
FROM
devices;

View File

@ -10,7 +10,8 @@ SELECT
sensor_enabled,
tick_duration,
device_id,
creation_date
creation_date,
update_date
FROM
sensors
WHERE

View File

@ -10,7 +10,8 @@ SELECT
sensor_enabled,
tick_duration,
device_id,
creation_date
creation_date,
update_date
FROM
sensors
ORDER BY

View File

@ -2,6 +2,7 @@ UPDATE devices
SET
device_name = $1,
device_location = $2,
creation_date = $3
creation_date = $3,
update_date = $4
WHERE
device_id = $4
device_id = $5

View File

@ -10,6 +10,7 @@ SET
sensor_enabled = $8,
tick_duration = $9,
device_id = $10,
creation_date = $11
creation_date = $11,
update_date = $12
WHERE
sensor_id = $12;
sensor_id = $13;