37 lines
1.9 KiB
SQL
37 lines
1.9 KiB
SQL
-- 总库补表:识别流水 + 可选配置表
|
|
-- 在 Navicat 中选中你的业务库后执行本脚本
|
|
|
|
-- 1) 识别记录(每次扫菜/选图识别写一条)
|
|
CREATE TABLE IF NOT EXISTS `recognition_records` (
|
|
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
`request_id` VARCHAR(64) NOT NULL COMMENT '识别请求号(与上报 API 一致)',
|
|
`base_code` VARCHAR(50) DEFAULT NULL COMMENT '基地编码',
|
|
`source_base_id` INT DEFAULT NULL COMMENT '基地表 ID',
|
|
`capture_time` DATETIME NOT NULL COMMENT '抓拍/识别时间',
|
|
`source_image` VARCHAR(512) DEFAULT NULL COMMENT '原图路径或 URL',
|
|
`labeled_image` VARCHAR(512) DEFAULT NULL COMMENT '标注图路径或 URL',
|
|
`dish_count` INT NOT NULL DEFAULT 0 COMMENT '菜品区域数',
|
|
`unknown_count` INT NOT NULL DEFAULT 0 COMMENT '未知菜数量',
|
|
`summary` VARCHAR(512) DEFAULT NULL COMMENT '结果摘要(菜名列表)',
|
|
`result_json` TEXT NOT NULL COMMENT '完整 dishes JSON',
|
|
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入库时间',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_recog_request` (`request_id`),
|
|
KEY `idx_recog_capture` (`capture_time`),
|
|
KEY `idx_recog_base_code` (`base_code`),
|
|
KEY `idx_recog_base_id` (`source_base_id`),
|
|
CONSTRAINT `fk_recog_base`
|
|
FOREIGN KEY (`source_base_id`) REFERENCES `bases` (`id`)
|
|
ON DELETE SET NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='识别流水表';
|
|
|
|
-- 建议:同一 request_id 幂等(若库中已有重复脏数据,先清理再建唯一索引)
|
|
-- ALTER TABLE `recognition_records` ADD UNIQUE KEY `uk_recog_request` (`request_id`);
|
|
|
|
-- 2) 可选:总库配置(阈值等)
|
|
CREATE TABLE IF NOT EXISTS `app_settings` (
|
|
`key` VARCHAR(50) NOT NULL COMMENT '配置键',
|
|
`value` TEXT NOT NULL COMMENT '配置值',
|
|
PRIMARY KEY (`key`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应用键值配置';
|