SQL

CREATE TABLE "assignment_items"  (
  id              TEXT PRIMARY KEY,
  assignment_id   TEXT NOT NULL REFERENCES assignments(id) ON DELETE CASCADE,
  child_id        TEXT NOT NULL,
  subject         TEXT NOT NULL DEFAULT '',
  item_type       TEXT NOT NULL CHECK(item_type IN ('exam','copy','recite','dictation','other','major')),
  title           TEXT DEFAULT '',
  description     TEXT DEFAULT '',
  content         TEXT DEFAULT '',
  media_urls      TEXT DEFAULT '[]',
  supplement_urls TEXT DEFAULT '[]',
  expected_answer TEXT DEFAULT '',
  status          TEXT DEFAULT 'pending'
                            CHECK(status IN ('pending','submitted','corrected')),
  sort_order      INTEGER DEFAULT 0,
  parent_id       TEXT DEFAULT NULL,
  created_at      DATETIME DEFAULT (datetime('now')),
  updated_at      DATETIME DEFAULT (datetime('now')),
  group_id TEXT DEFAULT NULL
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id TEXT Rename | Drop
assignment_id TEXT Rename | Drop
child_id TEXT Rename | Drop
subject TEXT Rename | Drop
item_type TEXT Rename | Drop
title TEXT Rename | Drop
description TEXT Rename | Drop
content TEXT Rename | Drop
media_urls TEXT Rename | Drop
supplement_urls TEXT Rename | Drop
expected_answer TEXT Rename | Drop
status TEXT Rename | Drop
sort_order INTEGER Rename | Drop
parent_id TEXT Rename | Drop
created_at DATETIME Rename | Drop
updated_at DATETIME Rename | Drop
group_id TEXT Rename | Drop

Foreign Keys

Column Destination
assignment_id assignments.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_item_assignment assignment_id SQL
CREATE INDEX idx_item_assignment
ON assignment_items(assignment_id)
Drop
idx_item_child child_id SQL
CREATE INDEX idx_item_child
ON assignment_items(child_id)
Drop
idx_item_subject subject SQL
CREATE INDEX idx_item_subject
ON assignment_items(subject)
Drop
sqlite_autoindex_assignment_items_1 id SQL
-- no sql found --
Drop