SQL

CREATE TABLE credit_transactions  (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  user_id INTEGER NOT NULL,
  chatbot_id INTEGER,
  amount_delta INTEGER NOT NULL,
  reason TEXT NOT NULL,
  reference_id TEXT NOT NULL UNIQUE,
  created_at TEXT NOT NULL,
  FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
  FOREIGN KEY (chatbot_id) REFERENCES chatbots(id) ON DELETE SET NULL
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id INTEGER Rename | Drop
user_id INTEGER Rename | Drop
chatbot_id INTEGER Rename | Drop
amount_delta INTEGER Rename | Drop
reason TEXT Rename | Drop
reference_id TEXT Rename | Drop
created_at TEXT Rename | Drop

Foreign Keys

Column Destination
chatbot_id chatbots.id
user_id users.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_credit_transactions_user
  • user_id
  • created_at
SQL
CREATE INDEX idx_credit_transactions_user
ON credit_transactions(user_id, created_at DESC)
Drop
sqlite_autoindex_credit_transactions_1 reference_id SQL
-- no sql found --
Drop