lume/src-tauri/migrations/20230418013219_initial_data.sql

69 lines
1.5 KiB
MySQL
Raw Normal View History

-- Add migration script here
-- create accounts table
-- is_active (multi-account feature), value:
-- 0: false
-- 1: true
CREATE TABLE
accounts (
id INTEGER NOT NULL PRIMARY KEY,
2023-05-26 02:28:49 +00:00
npub TEXT NOT NULL UNIQUE,
pubkey TEXT NOT NULL UNIQUE,
privkey TEXT NOT NULL,
2023-05-26 02:28:49 +00:00
follows JSON,
is_active INTEGER NOT NULL DEFAULT 0,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-- create plebs table
CREATE TABLE
plebs (
id INTEGER NOT NULL PRIMARY KEY,
2023-05-26 02:28:49 +00:00
npub TEXT NOT NULL UNIQUE,
name TEXT,
2023-06-08 11:09:36 +00:00
displayName TEXT,
image TEXT,
2023-05-26 02:28:49 +00:00
banner TEXT,
2023-06-08 11:09:36 +00:00
bio TEXT,
2023-05-26 02:28:49 +00:00
nip05 TEXT,
lud06 TEXT,
lud16 TEXT,
2023-06-08 11:09:36 +00:00
about TEXT,
zapService TEXT,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-- create notes table
CREATE TABLE
notes (
id INTEGER NOT NULL PRIMARY KEY,
event_id TEXT NOT NULL UNIQUE,
account_id INTEGER NOT NULL,
pubkey TEXT NOT NULL,
kind INTEGER NOT NULL DEFAULT 1,
2023-05-26 02:28:49 +00:00
tags JSON,
content TEXT NOT NULL,
created_at INTEGER NOT NULL,
parent_id TEXT,
2023-05-26 02:28:49 +00:00
parent_comment_id TEXT,
FOREIGN KEY (account_id) REFERENCES accounts (id)
);
-- create channels table
CREATE TABLE
channels (
id INTEGER NOT NULL PRIMARY KEY,
event_id TEXT NOT NULL UNIQUE,
2023-05-26 02:28:49 +00:00
name TEXT,
about TEXT,
picture TEXT,
created_at INTEGER NOT NULL
);
-- create settings table
CREATE TABLE
settings (
id INTEGER NOT NULL PRIMARY KEY,
key TEXT NOT NULL,
value TEXT NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);