31 lines
1.3 KiB
SQL
31 lines
1.3 KiB
SQL
-- 添加目录摘取状态相关字段到 t_file 表
|
||
-- 执行时间: 2025-12-02
|
||
|
||
-- 添加目录摘取状态字段
|
||
ALTER TABLE t_file ADD COLUMN IF NOT EXISTS catalog_extraction_status VARCHAR(32) DEFAULT 'not_started';
|
||
|
||
-- 添加目录摘取重试次数字段
|
||
ALTER TABLE t_file ADD COLUMN IF NOT EXISTS catalog_extraction_retry_count INT DEFAULT 0 NOT NULL;
|
||
|
||
-- 添加目录摘取完成时间字段
|
||
ALTER TABLE t_file ADD COLUMN IF NOT EXISTS catalog_extraction_time TIMESTAMP;
|
||
|
||
-- 添加字段注释
|
||
COMMENT ON COLUMN t_file.catalog_extraction_status IS '目录摘取状态:not_started-未开始, processing-处理中, completed-已完成';
|
||
COMMENT ON COLUMN t_file.catalog_extraction_retry_count IS '目录摘取重试次数(最多重试3次)';
|
||
COMMENT ON COLUMN t_file.catalog_extraction_time IS '目录摘取完成时间';
|
||
|
||
-- 为已有数据设置初始状态
|
||
-- 如果已经有目录记录,设置为 completed
|
||
UPDATE t_file f
|
||
SET catalog_extraction_status = 'completed',
|
||
catalog_extraction_time = f.update_time
|
||
WHERE EXISTS (
|
||
SELECT 1 FROM t_file_directory fd
|
||
WHERE fd.file_id = f.file_id
|
||
)
|
||
AND (catalog_extraction_status IS NULL OR catalog_extraction_status = 'not_started');
|
||
|
||
-- 创建索引以提高查询性能
|
||
CREATE INDEX IF NOT EXISTS idx_file_catalog_status ON t_file(catalog_extraction_status);
|