32 lines
1.5 KiB
SQL
32 lines
1.5 KiB
SQL
-- Author: fruit.com.cn
|
|
-- 剧单:运营编排的短剧集合,归属某个分类,并可关联多部短剧
|
|
-- 幂等,仅提交文件,由发布流程执行
|
|
|
|
CREATE TABLE IF NOT EXISTS drama_playlist (
|
|
id BIGINT PRIMARY KEY,
|
|
classification_id BIGINT NOT NULL DEFAULT 0,
|
|
name VARCHAR(64) NOT NULL,
|
|
sort INTEGER NOT NULL DEFAULT 0,
|
|
status SMALLINT NOT NULL DEFAULT 1,
|
|
created_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE UNIQUE INDEX IF NOT EXISTS uk_drama_playlist_name ON drama_playlist (name);
|
|
CREATE INDEX IF NOT EXISTS idx_drama_playlist_classification ON drama_playlist (classification_id);
|
|
COMMENT ON TABLE drama_playlist IS '剧单;归属分类,可关联多部短剧';
|
|
|
|
CREATE TABLE IF NOT EXISTS drama_playlist_drama (
|
|
id BIGINT PRIMARY KEY,
|
|
playlist_id BIGINT NOT NULL,
|
|
drama_id BIGINT NOT NULL,
|
|
created_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
CREATE UNIQUE INDEX IF NOT EXISTS uk_playlist_drama ON drama_playlist_drama (playlist_id, drama_id);
|
|
CREATE INDEX IF NOT EXISTS idx_playlist_drama_drama ON drama_playlist_drama (drama_id);
|
|
COMMENT ON TABLE drama_playlist_drama IS '剧单与短剧的关联关系';
|
|
|
|
DROP TRIGGER IF EXISTS trg_drama_playlist_updated_at ON drama_playlist;
|
|
CREATE TRIGGER trg_drama_playlist_updated_at
|
|
BEFORE UPDATE ON drama_playlist
|
|
FOR EACH ROW EXECUTE FUNCTION set_updated_at();
|