mirror of
https://github.com/aljazceru/cyphernode.git
synced 2025-12-18 21:25:06 +01:00
124 lines
3.4 KiB
SQL
124 lines
3.4 KiB
SQL
PRAGMA foreign_keys = ON;
|
|
|
|
CREATE TABLE watching_by_pub32 (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
pub32 TEXT UNIQUE,
|
|
label TEXT UNIQUE,
|
|
derivation_path TEXT,
|
|
callback0conf TEXT,
|
|
callback1conf TEXT,
|
|
last_imported_n INTEGER,
|
|
watching INTEGER DEFAULT FALSE,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE watching (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
address TEXT UNIQUE,
|
|
watching INTEGER DEFAULT FALSE,
|
|
callback0conf TEXT,
|
|
calledback0conf INTEGER DEFAULT FALSE,
|
|
callback1conf TEXT,
|
|
calledback1conf INTEGER DEFAULT FALSE,
|
|
imported INTEGER DEFAULT FALSE,
|
|
watching_by_pub32_id INTEGER REFERENCES watching_by_pub32,
|
|
pub32_index INTEGER,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE watching_tx (
|
|
watching_id INTEGER REFERENCES watching,
|
|
tx_id INTEGER REFERENCES tx,
|
|
vout INTEGER,
|
|
amount REAL
|
|
);
|
|
CREATE UNIQUE INDEX idx_watching_tx ON watching_tx (watching_id, tx_id);
|
|
|
|
CREATE TABLE tx (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
txid TEXT UNIQUE,
|
|
hash TEXT UNIQUE,
|
|
confirmations INTEGER DEFAULT 0,
|
|
timereceived INTEGER,
|
|
fee REAL,
|
|
size INTEGER,
|
|
vsize INTEGER,
|
|
is_replaceable INTEGER,
|
|
blockhash TEXT,
|
|
blockheight INTEGER,
|
|
blocktime INTEGER,
|
|
raw_tx TEXT,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_tx_timereceived ON tx (timereceived);
|
|
CREATE INDEX idx_tx_fee ON tx (fee);
|
|
CREATE INDEX idx_tx_size ON tx (size);
|
|
CREATE INDEX idx_tx_vsize ON tx (vsize);
|
|
CREATE INDEX idx_tx_blockhash ON tx (blockhash);
|
|
CREATE INDEX idx_tx_blockheight ON tx (blockheight);
|
|
CREATE INDEX idx_tx_blocktime ON tx (blocktime);
|
|
|
|
CREATE TABLE recipient (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
address TEXT,
|
|
amount REAL,
|
|
tx_id INTEGER REFERENCES tx,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_recipient_address ON recipient (address);
|
|
|
|
CREATE TABLE watching_by_txid (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
txid TEXT UNIQUE,
|
|
watching INTEGER DEFAULT FALSE,
|
|
callback1conf TEXT,
|
|
calledback1conf INTEGER DEFAULT FALSE,
|
|
callbackxconf TEXT,
|
|
calledbackxconf INTEGER DEFAULT FALSE,
|
|
nbxconf INTEGER,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_watching_by_txid_txid ON watching_by_txid (txid);
|
|
|
|
CREATE TABLE stamp (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
hash TEXT UNIQUE,
|
|
callbackUrl TEXT,
|
|
requested INTEGER DEFAULT FALSE,
|
|
upgraded INTEGER DEFAULT FALSE,
|
|
calledback INTEGER DEFAULT FALSE,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_stamp_calledback ON stamp (calledback);
|
|
|
|
CREATE TABLE cyphernode_props (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
property TEXT,
|
|
value TEXT,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_cp_property ON cyphernode_props (property);
|
|
|
|
INSERT INTO cyphernode_props (property, value) VALUES ("version", "0.1");
|
|
INSERT INTO cyphernode_props (property, value) VALUES ("pay_index", "0");
|
|
|
|
CREATE TABLE ln_invoice (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
label TEXT UNIQUE,
|
|
bolt11 TEXT UNIQUE,
|
|
payment_hash TEXT,
|
|
msatoshi INTEGER,
|
|
status TEXT,
|
|
pay_index INTEGER,
|
|
msatoshi_received INTEGER,
|
|
paid_at INTEGER,
|
|
description TEXT,
|
|
expires_at INTEGER,
|
|
callback_url TEXT,
|
|
calledback INTEGER DEFAULT FALSE,
|
|
callback_failed INTEGER DEFAULT FALSE,
|
|
inserted_ts INTEGER DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE INDEX idx_lninvoice_label ON ln_invoice (label);
|
|
CREATE INDEX idx_lninvoice_bolt11 ON ln_invoice (bolt11);
|