minimal working example with diesel

This commit is contained in:
2026-01-28 15:43:22 +01:00
parent 25beef5cca
commit 361bd7bc4a
17 changed files with 370 additions and 820 deletions

View File

@@ -0,0 +1,18 @@
CREATE TYPE battery_status_enum AS ENUM ('unknown', 'unplugged', 'charging', 'full');
CREATE TABLE locations (
timestamp bigint PRIMARY KEY,
latitude numeric(9,6) NOT NULL,
longitude numeric(9,6) NOT NULL,
accuracy numeric(7,2) NOT NULL,
altitude numeric(7,2),
velocity numeric(7,2),
battery_level smallint NOT NULL,
bearing numeric(6,3),
battery_status battery_status_enum DEFAULT 'unknown' NOT NULL,
CONSTRAINT Location_battery_level_check CHECK ((battery_level >= 0) AND (battery_level <= 100)),
CONSTRAINT Location_bearing_check CHECK ((bearing >= (0)::numeric) AND (bearing <= (360)::numeric))
)
WITH (oids = false);
CREATE INDEX locations_timestamp ON locations USING btree (timestamp);