Files
media/sql/video_audio_merge_task.sql
T
2026-06-22 09:18:45 +08:00

43 lines
2.3 KiB
SQL

-- video_audio_merge_task 视频拼接+混音异步任务表
CREATE TABLE IF NOT EXISTS video_audio_merge_task (
id BIGSERIAL NOT NULL,
tenant_id BIGINT NOT NULL DEFAULT 0,
task_id VARCHAR(64) NOT NULL,
video_urls TEXT NOT NULL DEFAULT '',
audio_urls TEXT NOT NULL DEFAULT '',
status VARCHAR(20) NOT NULL DEFAULT 'pending',
file_url TEXT NOT NULL DEFAULT '',
file_size BIGINT NOT NULL DEFAULT 0,
file_name VARCHAR(255) NOT NULL DEFAULT '',
file_format VARCHAR(32) NOT NULL DEFAULT '',
file_address_prefix TEXT NOT NULL DEFAULT '',
duration_str VARCHAR(32) NOT NULL DEFAULT '',
error_message TEXT,
callback_url VARCHAR(500) NOT NULL DEFAULT '',
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
deleted_at TIMESTAMP WITH TIME ZONE,
PRIMARY KEY (id)
);
COMMENT ON TABLE video_audio_merge_task IS '视频拼接+混音异步任务表';
COMMENT ON COLUMN video_audio_merge_task.task_id IS '任务唯一标识';
COMMENT ON COLUMN video_audio_merge_task.video_urls IS '视频URL列表(JSON数组)';
COMMENT ON COLUMN video_audio_merge_task.audio_urls IS '音频URL列表(JSON数组)';
COMMENT ON COLUMN video_audio_merge_task.status IS '任务状态:pending/running/success/failed';
COMMENT ON COLUMN video_audio_merge_task.file_url IS 'MinIO文件访问路径';
COMMENT ON COLUMN video_audio_merge_task.file_size IS '文件大小(字节)';
COMMENT ON COLUMN video_audio_merge_task.file_name IS '文件名';
COMMENT ON COLUMN video_audio_merge_task.file_format IS '文件格式';
COMMENT ON COLUMN video_audio_merge_task.file_address_prefix IS 'MinIO地址前缀';
COMMENT ON COLUMN video_audio_merge_task.duration_str IS '合并后视频时长';
COMMENT ON COLUMN video_audio_merge_task.error_message IS '错误信息';
COMMENT ON COLUMN video_audio_merge_task.callback_url IS '回调地址';
COMMENT ON COLUMN video_audio_merge_task.created_at IS '创建时间';
COMMENT ON COLUMN video_audio_merge_task.updated_at IS '更新时间';
COMMENT ON COLUMN video_audio_merge_task.deleted_at IS '删除时间(软删除)';
CREATE UNIQUE INDEX IF NOT EXISTS idx_merge_task_task_id ON video_audio_merge_task(task_id);
CREATE INDEX IF NOT EXISTS idx_merge_task_status ON video_audio_merge_task(status);
CREATE INDEX IF NOT EXISTS idx_merge_task_created_at ON video_audio_merge_task(created_at);