SQL

CREATE TABLE messages  (
  id TEXT PRIMARY KEY,
  session_id TEXT NOT NULL,
  role TEXT NOT NULL CHECK (role IN ('user', 'assistant')),
  content TEXT NOT NULL,
  created_at TEXT NOT NULL DEFAULT (datetime('now')),
  FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id TEXT Rename | Drop
session_id TEXT Rename | Drop
role TEXT Rename | Drop
content TEXT Rename | Drop
created_at TEXT Rename | Drop

Foreign Keys

Column Destination
session_id sessions.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_messages_session
  • session_id
  • created_at
SQL
CREATE INDEX idx_messages_session
ON messages(session_id, created_at)
Drop
sqlite_autoindex_messages_1 id SQL
-- no sql found --
Drop