Migration safety report

Planned statements, classified by what they remove or tighten
7
statements
4
safe
1
warning
2
destructive

Statements

#SeveritySubjectReasonStatement
1 safe *ast.RawSQLNode does not remove data or tighten constraints
PRAGMA foreign_keys = off
2 safe *ast.CreateTableNode does not remove data or tighten constraints
CREATE TABLE "new_products" (
  "id" INTEGER PRIMARY KEY AUTOINCREMENT,
  "sku" TEXT NOT NULL UNIQUE,
  "name" TEXT NOT NULL,
  "price_cents" INTEGER NOT NULL
)
3 safe *ast.RawSQLNode does not remove data or tighten constraints
INSERT INTO "new_products" ("id", "sku", "name", "price_cents") SELECT "id", "sku", "name", "price_cents" FROM "products"
4 destructive products DROP TABLE removes the table and all rows
DROP TABLE "products"
5 warning *ast.RawSQLNode rename can break deployed readers and writers
ALTER TABLE "new_products" RENAME TO "products"
6 destructive legacy_inventory DROP TABLE removes the table and all rows
DROP TABLE "legacy_inventory"
7 safe *ast.RawSQLNode does not remove data or tighten constraints
PRAGMA foreign_keys = on