SQL

CREATE TABLE subscription_events  (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  account_id INTEGER NOT NULL REFERENCES accounts(id) ON DELETE CASCADE,
  event TEXT NOT NULL,
  -- 'trial_started',
  'subscribed',
  'seats_changed',
  -- 'cancelled',
  'read_only_started',
  'deleted',
  ...
  data TEXT,
  -- optionales JSON
  created_at TEXT NOT NULL DEFAULT (datetime('now'))
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id INTEGER Rename | Drop
account_id INTEGER Rename | Drop
event TEXT Rename | Drop
data TEXT Rename | Drop
created_at TEXT Rename | Drop

Foreign Keys

Column Destination
account_id accounts.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_subscription_events_account
  • account_id
  • created_at
SQL
CREATE INDEX idx_subscription_events_account
ON subscription_events(account_id, created_at)
Drop