1
0
mirror of https://github.com/mbirth/tcl_update_db.git synced 2024-09-20 01:03:26 +01:00
tcl_update_db/sql/dbschema.sql

73 lines
2.2 KiB
MySQL
Raw Normal View History

2017-11-01 17:47:41 +00:00
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
);
2017-11-01 18:26:42 +00:00
-- Needs SQLite 3.7 or newer
2017-11-01 23:05:39 +00:00
INSERT INTO "models" ("familyId", "name") VALUES
(1, "BBB100-1"),
(1, "BBB100-2"),
(2, "BBD100-1")
2017-11-01 17:47:41 +00:00
;
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
);
2017-11-01 18:26:42 +00:00
-- Needs SQLite 3.7 or newer
2017-11-01 23:05:39 +00:00
INSERT INTO "devices" ("ref", "modelId", "name") VALUES
("PRD-63117-011", 2, "Unlocked EMEA"),
("PRD-63116-001", 1, "Unlocked USA")
2017-11-01 17:47:41 +00:00
;
CREATE TABLE "files" (
"sha1" TEXT UNIQUE PRIMARY KEY, -- checksum of file
"file_name" TEXT, -- filename of file
"file_size" INTEGER, -- size
"type" TEXT, -- FULL(4) or OTA(2) update
2017-12-12 00:51:18 +00:00
"fv" TEXT, -- from version (only for OTA)
"tv" TEXT, -- target version, e.g. AAQ302
"note" TEXT, -- description of file (optional)
"published_first" INTEGER, -- stamp of earliest pubdate
"published_last" INTEGER -- stamp of latest pubdate
);
2017-11-01 18:26:42 +00:00
-- we only care about the first file for now
-- a separate "files" table might get introduced later
CREATE TABLE "updates" (
"updateId" INTEGER PRIMARY KEY AUTOINCREMENT,
"curef" TEXT, -- PRD number
"update_desc" TEXT,
2017-11-01 18:26:42 +00:00
"svn" TEXT, -- version info from <SVN> field
"seenDate" INTEGER, -- date added to db
2017-11-01 18:26:42 +00:00
"pubDate" INTEGER, -- published date
"publisher" TEXT, -- publisher
"num_files" INTEGER, -- number of files total
"fwId" TEXT, -- <FW_ID> (CHANGES FOR THE SAME FILE_ID!!!) MAYBE MOVE TO update_map
2017-11-01 18:26:42 +00:00
"file_id" TEXT, -- <FILE_ID> of first file
2017-12-12 00:51:18 +00:00
"file_sha1" TEXT REFERENCES "files" ("sha1") -- SHA1 checksum of first file
2017-11-01 17:47:41 +00:00
);
2017-12-11 00:28:52 +00:00
CREATE UNIQUE INDEX "index_updates" ON "updates" (
"curef",
2017-12-11 00:28:52 +00:00
"fwId",
"file_id"
);