feat(db): ads 写权威表与 ads_ov 投影表(含迁移)

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-09-28 22:43:25 +08:00
parent 001d3aaf73
commit 726f6a1be8
4 changed files with 75 additions and 0 deletions
@@ -0,0 +1,22 @@
-- 广告位域(2026-09-28 设计 §2.1):ads 写权威表。
-- 校对手决:Prisma 生成 DDL 固定 utf8mb4_unicode_ci,逐表改写为库级约定的
-- utf8mb4_0900_bin(同 embed_slots 口径)。albumIds JSON null=全局(归一化:
-- 空数组存 null);绑定相册删除不级联清理(观众页已 404,后台编辑过滤失效项)。
-- 排序索引(sortOrder, createdAt)服务公开端列表序。
-- CreateTable
CREATE TABLE `ads` (
`id` VARCHAR(191) NOT NULL,
`title` VARCHAR(120) NULL,
`imageObjectKey` VARCHAR(512) NOT NULL,
`linkUrl` VARCHAR(2048) NOT NULL,
`enabled` BOOLEAN NOT NULL DEFAULT true,
`sortOrder` INTEGER NOT NULL DEFAULT 0,
`albumIds` JSON NULL,
`entityVersion` INTEGER NOT NULL DEFAULT 1,
`createdAt` DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
`updatedAt` DATETIME(6) NOT NULL,
INDEX `ads_sortOrder_createdAt_idx`(`sortOrder`, `createdAt`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_bin;