Validate allowed values at the database layer.

Section: Create tables and constraints

Use a CHECK constraint

sql
sql
CREATE TABLE subscriptions (
  id INTEGER PRIMARY KEY,
  plan TEXT NOT NULL CHECK (plan IN ('free','premium','team')),
  status TEXT NOT NULL CHECK (status IN ('active','canceled','past_due'))
);
Explanation

CHECK constraints help protect data quality even when multiple apps write to the same file.

Learn the surrounding workflow

Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.

Related commands

Same sheet · prioritizing Create tables and constraints
Create a basic table
Define a rowid-backed table with primary key and timestamps.
OpenIn sheetsqlsame section
Add a foreign key
Reference a parent table from a child table.
OpenIn sheetsqlsame section
Create a WITHOUT ROWID table
Optimize some composite-key tables.
OpenIn sheetsqlsame section
Create a generated column
Materialize or compute a derived value from another column.
OpenIn sheetsqlsame section
Add a column
Append a new nullable or defaulted column.
OpenIn sheetsql1 tag match
Rename a table
Change the table name without recreating data.
OpenIn sheetsql1 tag match