Schema for tils
CREATE TABLE [til] (
[path] TEXT PRIMARY KEY,
[topic] TEXT,
[title] TEXT,
[url] TEXT,
[body] TEXT,
[html] TEXT,
[shot] BLOB,
[created] TEXT,
[created_utc] TEXT,
[updated] TEXT,
[updated_utc] TEXT
, [shot_hash] TEXT, [slug] TEXT);
CREATE VIRTUAL TABLE [til_fts] USING FTS5 (
[title], [body],
tokenize='porter',
content=[til]
);
CREATE TABLE 'til_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE 'til_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE 'til_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE 'til_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER [til_ai] AFTER INSERT ON [til] BEGIN
INSERT INTO [til_fts] (rowid, [title], [body]) VALUES (new.rowid, new.[title], new.[body]);
END;
CREATE TRIGGER [til_ad] AFTER DELETE ON [til] BEGIN
INSERT INTO [til_fts] ([til_fts], rowid, [title], [body]) VALUES('delete', old.rowid, old.[title], old.[body]);
END;
CREATE TRIGGER [til_au] AFTER UPDATE ON [til] BEGIN
INSERT INTO [til_fts] ([til_fts], rowid, [title], [body]) VALUES('delete', old.rowid, old.[title], old.[body]);
INSERT INTO [til_fts] (rowid, [title], [body]) VALUES (new.rowid, new.[title], new.[body]);
END