66 lines
1.5 KiB
SQL
66 lines
1.5 KiB
SQL
PRAGMA journal_mode=WAL;
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS customer (
|
|
id TEXT NOT NULL PRIMARY KEY
|
|
,max_nkode_len INTEGER NOT NULL
|
|
,min_nkode_len INTEGER NOT NULL
|
|
,distinct_sets INTEGER NOT NULL
|
|
,distinct_attributes INTEGER NOT NULL
|
|
,lock_out INTEGER NOT NULL
|
|
,expiration INTEGER NOT NULL
|
|
,attribute_values BLOB NOT NULL
|
|
,set_values BLOB NOT NULL
|
|
,last_renew TEXT NOT NULL
|
|
,created_at TEXT NOT NULL
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS user (
|
|
id TEXT NOT NULL PRIMARY KEY
|
|
,email TEXT NOT NULL
|
|
-- first_name TEXT NOT NULL
|
|
-- last_name TEXT NOT NULL
|
|
,renew INT NOT NULL
|
|
,refresh_token TEXT
|
|
,customer_id TEXT NOT NULL
|
|
|
|
-- Enciphered Passcode
|
|
,code TEXT NOT NULL
|
|
,mask TEXT NOT NULL
|
|
|
|
-- Keypad Dimensions
|
|
,attributes_per_key INT NOT NULL
|
|
,number_of_keys INT NOT NULL
|
|
|
|
-- User Keys
|
|
,alpha_key BLOB NOT NULL
|
|
,set_key BLOB NOT NULL
|
|
,pass_key BLOB NOT NULL
|
|
,mask_key BLOB NOT NULL
|
|
,salt BLOB NOT NULL
|
|
,max_nkode_len INT NOT NULL
|
|
|
|
-- User Interface
|
|
,idx_interface BLOB NOT NULL
|
|
,svg_id_interface BLOB NOT NULL
|
|
|
|
,last_login TEXT NULL
|
|
,created_at TEXT
|
|
|
|
,FOREIGN KEY (customer_id) REFERENCES customer(id)
|
|
,UNIQUE(customer_id, email)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS svg_icon (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT
|
|
,svg TEXT NOT NULL
|
|
);
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS user_permission (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT
|
|
,user_id TEXT NOT NULL
|
|
,permission TEXT NOT NULL
|
|
,FOREIGN KEY (user_id) REFERENCES user(id)
|
|
,UNIQUE(user_id, permission)
|
|
); |