From ad6c69b0e85ccd1f61d8678514d47f6a21b1a0be Mon Sep 17 00:00:00 2001 From: xfy Date: Fri, 5 Jun 2026 16:29:20 +0800 Subject: [PATCH] db(migration): merge slug partial unique into 002_posts.sql --- migrations/002_posts.sql | 2 +- migrations/003_slug_partial_unique.sql | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) delete mode 100644 migrations/003_slug_partial_unique.sql diff --git a/migrations/002_posts.sql b/migrations/002_posts.sql index d395887..2b7a589 100644 --- a/migrations/002_posts.sql +++ b/migrations/002_posts.sql @@ -17,12 +17,12 @@ CREATE TABLE posts ( updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), deleted_at TIMESTAMPTZ, - CONSTRAINT posts_slug_unique UNIQUE (slug), CONSTRAINT posts_status_check CHECK (status IN ('draft', 'published')) ); CREATE INDEX idx_posts_status_published ON posts(status, published_at DESC) WHERE deleted_at IS NULL; CREATE INDEX idx_posts_slug ON posts(slug) WHERE deleted_at IS NULL; +CREATE UNIQUE INDEX idx_posts_slug_unique ON posts(slug) WHERE deleted_at IS NULL; CREATE TABLE tags ( id SERIAL PRIMARY KEY, diff --git a/migrations/003_slug_partial_unique.sql b/migrations/003_slug_partial_unique.sql deleted file mode 100644 index 9b6d5d7..0000000 --- a/migrations/003_slug_partial_unique.sql +++ /dev/null @@ -1,5 +0,0 @@ --- 删除全局唯一约束 -ALTER TABLE posts DROP CONSTRAINT IF EXISTS posts_slug_unique; - --- 创建部分唯一索引(仅对未删除记录) -CREATE UNIQUE INDEX idx_posts_slug_unique ON posts(slug) WHERE deleted_at IS NULL;