db(migration): merge slug partial unique into 002_posts.sql

This commit is contained in:
xfy 2026-06-05 16:29:20 +08:00
parent 22de5add83
commit ad6c69b0e8
2 changed files with 1 additions and 6 deletions

View File

@ -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,

View File

@ -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;