SQL

CREATE TABLE favorites  (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  child_id    TEXT NOT NULL REFERENCES children(id),
  message_id  INTEGER REFERENCES messages(id),
  role        TEXT NOT NULL CHECK(role IN ('user', 'ai')),
  content     TEXT NOT NULL,
  note        TEXT,
  source      TEXT DEFAULT 'manual',
  created_at  DATETIME DEFAULT (datetime('now'))
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id INTEGER Rename | Drop
child_id TEXT Rename | Drop
message_id INTEGER Rename | Drop
role TEXT Rename | Drop
content TEXT Rename | Drop
note TEXT Rename | Drop
source TEXT Rename | Drop
created_at DATETIME Rename | Drop

Foreign Keys

Column Destination
message_id messages.id
child_id children.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_favorites_child
  • child_id
  • created_at
SQL
CREATE INDEX idx_favorites_child
ON favorites(child_id, created_at DESC)
Drop