SQL

CREATE TABLE documents  (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  client_id INTEGER NOT NULL REFERENCES clients(id) ON DELETE CASCADE,
  name TEXT NOT NULL,
  original_name TEXT NOT NULL,
  mime_type TEXT NOT NULL,
  size INTEGER NOT NULL,
  visibility TEXT NOT NULL DEFAULT 'private' CHECK(visibility IN ('public','private')),
  uploaded_by INTEGER REFERENCES users(id),
  category TEXT DEFAULT 'general',
  created_at TEXT NOT NULL DEFAULT (datetime('now','localtime'))
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id INTEGER Rename | Drop
client_id INTEGER Rename | Drop
name TEXT Rename | Drop
original_name TEXT Rename | Drop
mime_type TEXT Rename | Drop
size INTEGER Rename | Drop
visibility TEXT Rename | Drop
uploaded_by INTEGER Rename | Drop
category TEXT Rename | Drop
created_at TEXT Rename | Drop

Foreign Keys

Column Destination
uploaded_by users.id
client_id clients.id

+ Add index

Indexes

Name Columns Unique SQL Drop?