-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.sql
More file actions
61 lines (55 loc) · 2.78 KB
/
schema.sql
File metadata and controls
61 lines (55 loc) · 2.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
-- 创建数据库
CREATE DATABASE IF NOT EXISTS tingyue DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE tingyue;
-- 首先删除有外键依赖的表
DROP TABLE IF EXISTS edit_history;
DROP TABLE IF EXISTS translations;
DROP TABLE IF EXISTS transcriptions;
DROP TABLE IF EXISTS audio_files;
DROP TABLE IF EXISTS user;
-- 用户表
CREATE TABLE IF NOT EXISTS user (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE COMMENT '用户名',
password_hash VARCHAR(255) NOT NULL COMMENT '密码哈希',
email VARCHAR(100) NOT NULL COMMENT '邮箱',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
UNIQUE KEY uk_username (username),
UNIQUE KEY uk_email (email)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表';
-- 音频文件表
CREATE TABLE IF NOT EXISTS audio_files (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
file_name VARCHAR(255) NOT NULL COMMENT '文件名',
file_url VARCHAR(500) NOT NULL COMMENT '文件URL',
file_size BIGINT NOT NULL COMMENT '文件大小(字节)',
file_type VARCHAR(50) NOT NULL COMMENT '文件类型',
user_id BIGINT NOT NULL COMMENT '用户ID',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
INDEX idx_user_id (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='音频文件表';
-- 转写记录表
CREATE TABLE IF NOT EXISTS transcriptions (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
audio_file_id BIGINT NOT NULL COMMENT '音频文件ID',
content TEXT NOT NULL COMMENT '转写内容',
status VARCHAR(20) NOT NULL COMMENT '转写状态',
user_id BIGINT NOT NULL COMMENT '用户ID',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
INDEX idx_audio_file_id (audio_file_id),
INDEX idx_user_id (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转写记录表';
-- 翻译记录表
CREATE TABLE IF NOT EXISTS translations (
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '翻译记录ID',
user_id BIGINT NOT NULL COMMENT '用户ID',
original_text TEXT NOT NULL COMMENT '原文',
translated_text TEXT NOT NULL COMMENT '译文',
source_language VARCHAR(10) NOT NULL COMMENT '源语言',
target_language VARCHAR(10) NOT NULL COMMENT '目标语言',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
KEY idx_user_id (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='翻译记录表';