官网内容管理-后端接口开发
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
-- ============================================================
|
||||
-- 05_media.sql
|
||||
-- 素材库:媒体资源、标签
|
||||
-- 对应 proposal.md 第 6 节
|
||||
-- ============================================================
|
||||
|
||||
-- -----------------------------------------------------------
|
||||
-- 6.2 素材库
|
||||
-- -----------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `www_media` (
|
||||
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`filename` VARCHAR(255) NOT NULL COMMENT '原始文件名',
|
||||
`file_path` VARCHAR(500) NOT NULL COMMENT '存储路径(相对 uploads/)',
|
||||
`file_type` VARCHAR(10) NOT NULL COMMENT '类型: image / video / file',
|
||||
`mime_type` VARCHAR(50) NOT NULL DEFAULT '' COMMENT 'MIME 类型',
|
||||
`file_size` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '文件大小(字节)',
|
||||
`width` INT DEFAULT NULL COMMENT '图片/视频宽度(px)',
|
||||
`height` INT DEFAULT NULL COMMENT '图片/视频高度(px)',
|
||||
`category` VARCHAR(20) NOT NULL DEFAULT 'other' COMMENT '分类: product / banner / news / brand / video / document / other',
|
||||
`thumbnail_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '缩略图路径(300px 宽)',
|
||||
`webp_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'WebP 版本路径(图片自动生成)',
|
||||
`ref_count` INT NOT NULL DEFAULT 0 COMMENT '引用计数',
|
||||
`created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`deleted_at` DATETIME DEFAULT NULL COMMENT '软删除时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_category` (`category`),
|
||||
KEY `idx_filename` (`filename`),
|
||||
KEY `idx_created` (`created_at`),
|
||||
KEY `idx_deleted` (`deleted_at`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
||||
COMMENT='素材库';
|
||||
|
||||
-- -----------------------------------------------------------
|
||||
-- 素材标签
|
||||
-- -----------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `www_media_tags` (
|
||||
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`tag_name` VARCHAR(50) NOT NULL COMMENT '标签名',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_tag_name` (`tag_name`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
||||
COMMENT='素材标签';
|
||||
|
||||
-- -----------------------------------------------------------
|
||||
-- 素材-标签多对多关联
|
||||
-- -----------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `www_media_tag_map` (
|
||||
`media_id` BIGINT UNSIGNED NOT NULL,
|
||||
`tag_id` BIGINT UNSIGNED NOT NULL,
|
||||
PRIMARY KEY (`media_id`, `tag_id`),
|
||||
KEY `idx_tag` (`tag_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
||||
COMMENT='素材-标签关联';
|
||||
Reference in New Issue
Block a user