1
0
mirror of https://github.com/mbirth/tcl_update_db.git synced 2024-11-09 23:06:45 +00:00
tcl_update_db/sql/dbschema.sql

53 lines
1.2 KiB
SQL

PRAGMA journal_mode=WAL;
PRAGMA foreign_keys=on;
CREATE TABLE "families" (
"familyId" INTEGER PRIMARY KEY AUTOINCREMENT,
"name" TEXT -- e.g. KEYone, Motion
);
-- Needs SQLite 3.7 or newer
INSERT INTO "families" ("name") VALUES
("KEYone"),
("Motion")
;
CREATE TABLE "models" (
"modelId" INTEGER PRIMARY KEY AUTOINCREMENT,
"familyId" INTEGER REFERENCES "families" ("familyId"),
"name" TEXT -- e.g. BBB100-1
);
INSERT INTO "models" VALUES
(0, "BBB100-1"),
(0, "BBB100-2"),
(1, "BBD100-1")
;
CREATE TABLE "devices" (
"deviceId" INTEGER PRIMARY KEY AUTOINCREMENT,
"ref" TEXT, -- PRD number
"modelId" INTEGER REFERENCES "models" ("modelId"),
"name" TEXT -- e.g. Unlocked USA, Black KEYone
);
INSERT INTO "devices" VALUES
("PRD-63117-011", 1, "Unlocked EMEA"),
("PRD-63116-001", 0, "Unlocked USA")
;
CREATE TABLE "updates" (
"updateId" INTEGER PRIMARY KEY AUTOINCREMENT,
"fv" TEXT, -- version, e.g. AAQ302
"sha1" TEXT, -- SHA1 checksum of file
"type" TEXT, -- FULL or OTA
"note" TEXT, -- some note for this file (optional)
);
-- Maps update files to devices
CREATE TABLE "update_map" (
"deviceId" INTEGER REFERENCES "devices" ("deviceId"),
"updateId" INTEGER REFERENCES "updates" ("updateId")
);