-- +goose Up -- +goose StatementBegin PRAGMA foreign_keys = ON; CREATE TABLE locks ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, zwave_device_id INTEGER NOT NULL UNIQUE ); CREATE TABLE lock_code_slots ( id INTEGER PRIMARY KEY, lock INTEGER NOT NULL REFERENCES locks(id), code TEXT NOT NULL, slot INTEGER NOT NULL, name TEXT NOT NULL, enabled BOOLEAN NOT NULL DEFAULT 0, UNIQUE (lock, slot) ); CREATE TABLE lock_log ( lock INTEGER NOT NULL REFERENCES locks(id), timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, state TEXT NOT NULL, code INTEGER REFERENCES lock_code_slots(id) ); -- +goose StatementEnd -- +goose Down -- +goose StatementBegin DROP TABLE lock_log; DROP TABLE lock_code_slots; DROP TABLE locks; -- +goose StatementEnd