SQL

CREATE TABLE memory_items  (
  id TEXT NOT NULL,
  namespace TEXT NOT NULL,
  kind TEXT NOT NULL,
  text TEXT NOT NULL,
  tags TEXT,
  source_event_ids TEXT,
  source TEXT,
  salience REAL DEFAULT 0.0,
  decay_days INTEGER,
  pinned INTEGER DEFAULT 0,
  about_date TEXT,
  meta TEXT,
  created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),
  PRIMARY KEY (namespace, id)
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id TEXT Rename | Drop
namespace TEXT Rename | Drop
kind TEXT Rename | Drop
text TEXT Rename | Drop
tags TEXT Rename | Drop
source_event_ids TEXT Rename | Drop
source TEXT Rename | Drop
salience REAL Rename | Drop
decay_days INTEGER Rename | Drop
pinned INTEGER Rename | Drop
about_date TEXT Rename | Drop
meta TEXT Rename | Drop
created_at TEXT Rename | Drop

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_memory_items_lookup
  • namespace
  • kind
  • pinned
  • created_at
SQL
CREATE INDEX idx_memory_items_lookup
ON memory_items (namespace, kind, pinned, created_at)
Drop
idx_memory_items_namespace
  • namespace
  • created_at
SQL
CREATE INDEX idx_memory_items_namespace
ON memory_items (namespace, created_at)
Drop
idx_memory_items_salience
  • namespace
  • salience
  • created_at
SQL
CREATE INDEX idx_memory_items_salience
ON memory_items (namespace, salience DESC, created_at DESC)
Drop
sqlite_autoindex_memory_items_1
  • namespace
  • id
SQL
-- no sql found --
Drop

Triggers

Name SQL Drop?
trg_memory_items_ai SQL
CREATE TRIGGER trg_memory_items_ai
AFTER INSERT ON memory_items
BEGIN
  INSERT INTO memory_items_fts(namespace, id, kind, tags, text)
  VALUES (new.namespace, new.id, new.kind, COALESCE(new.tags, ''), new.text);
END
Drop
trg_memory_items_ad SQL
CREATE TRIGGER trg_memory_items_ad
AFTER DELETE ON memory_items
BEGIN
  DELETE FROM memory_items_fts
  WHERE namespace = old.namespace AND id = old.id;
END
Drop
trg_memory_items_au SQL
CREATE TRIGGER trg_memory_items_au
AFTER UPDATE ON memory_items
BEGIN
  DELETE FROM memory_items_fts
  WHERE namespace = old.namespace AND id = old.id;
  INSERT INTO memory_items_fts(namespace, id, kind, tags, text)
  VALUES (new.namespace, new.id, new.kind, COALESCE(new.tags, ''), new.text);
END
Drop