golib/cmd/sql-migrate/examples/pg-todos/sql/migrations/2026-04-05-003000_create-folders-and-folders-todos.up.sql
AJ ONeal de227bcaaf
feat(sql-migrate/examples): add pg-todos embedded migration runner
Example CLI todo app demonstrating sqlmigrate + pgmigrate for running
migrations directly via pgx/v5 instead of shelling out to psql. Uses
embed.FS for migration files, auto-migrates on startup, and includes
full CRUD for todos and folders with sqlc-ready query files.
2026-04-06 00:40:11 -06:00

17 lines
536 B
SQL

-- create-folders-and-folders-todos (up)
CREATE TABLE folders (
id CHAR(8) PRIMARY KEY,
name VARCHAR(100) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE folders_todos (
folder_id CHAR(8) NOT NULL REFERENCES folders(id) ON DELETE CASCADE,
todo_id CHAR(8) NOT NULL REFERENCES todos(id) ON DELETE CASCADE,
PRIMARY KEY (folder_id, todo_id)
);
-- leave this as the last line
INSERT INTO _migrations (name, id) VALUES ('2026-04-05-003000_create-folders-and-folders-todos', 'c3d4e5f6');