"""create notes table Revision ID: 0001 Revises: Create Date: 2025-01-01 00:00:00.000000 """ from alembic import op revision = "0001" down_revision = None branch_labels = None depends_on = None def upgrade() -> None: op.execute(""" CREATE TABLE IF NOT EXISTS notes ( id SERIAL PRIMARY KEY, title TEXT NOT NULL DEFAULT '', body TEXT NOT NULL DEFAULT '', tags TEXT[] NOT NULL DEFAULT '{}', parent_id INTEGER REFERENCES notes(id) ON DELETE SET NULL, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ) """) op.execute("CREATE INDEX IF NOT EXISTS ix_notes_tags ON notes USING gin (tags)") def downgrade() -> None: op.execute("DROP INDEX IF EXISTS ix_notes_tags") op.execute("DROP TABLE IF EXISTS notes")