imetting_backend/sql/transcript_tasks_setup.sql

53 lines
1.8 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

-- 为现有数据库添加转录任务支持的SQL脚本
-- 1. 更新audio_files表结构添加缺失字段
ALTER TABLE audio_files
ADD COLUMN file_name VARCHAR(255) AFTER meeting_id,
ADD COLUMN file_size BIGINT DEFAULT NULL AFTER file_path,
ADD COLUMN task_id VARCHAR(255) DEFAULT NULL AFTER upload_time;
-- 2. 创建转录任务表
CREATE TABLE transcript_tasks (
task_id VARCHAR(255) PRIMARY KEY,
meeting_id INT NOT NULL,
status ENUM('pending', 'processing', 'completed', 'failed') DEFAULT 'pending',
progress INT DEFAULT 0,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
completed_at TIMESTAMP NULL,
error_message TEXT NULL,
FOREIGN KEY (meeting_id) REFERENCES meetings(meeting_id) ON DELETE CASCADE
);
-- 3. 添加索引以优化查询性能
-- audio_files 表索引
ALTER TABLE audio_files ADD INDEX idx_task_id (task_id);
-- transcript_tasks 表索引
ALTER TABLE transcript_tasks ADD INDEX idx_meeting_id (meeting_id);
ALTER TABLE transcript_tasks ADD INDEX idx_status (status);
ALTER TABLE transcript_tasks ADD INDEX idx_created_at (created_at);
-- 4. 更新现有测试数据(如果需要)
-- 这些语句是可选的,用于更新现有的测试数据
UPDATE audio_files SET file_name = 'test_audio.mp3' WHERE file_name IS NULL;
UPDATE audio_files SET file_size = 10485760 WHERE file_size IS NULL; -- 10MB
SELECT '转录任务表创建完成!' as message;
CREATE TABLE llm_tasks (
task_id VARCHAR(100) PRIMARY KEY,
llm_task_id VARCHAR(100) DEFAULT NULL,
meeting_id INT NOT NULL,
user_prompt TEXT,
status VARCHAR(50) DEFAULT 'pending',
progress INT DEFAULT 0,
result TEXT,
error_message TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
completed_at TIMESTAMP NULL,
INDEX idx_meeting_id (meeting_id),
INDEX idx_status (status),
INDEX idx_created_at (created_at)
)