65 lines
2.9 KiB
SQL
65 lines
2.9 KiB
SQL
-- 创建数据库
|
|
CREATE DATABASE IF NOT EXISTS text_classification_system DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
|
|
USE text_classification_system;
|
|
|
|
-- 创建用户表
|
|
CREATE TABLE users (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
email VARCHAR(100) NOT NULL UNIQUE COMMENT '用户邮箱,作为登录用户名',
|
|
password VARCHAR(255) NOT NULL COMMENT '加密后的密码',
|
|
name VARCHAR(50) COMMENT '用户姓名',
|
|
gender ENUM('男', '女', '其他') COMMENT '性别',
|
|
birth_date DATE COMMENT '出生日期',
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '账户创建时间',
|
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '账户更新时间',
|
|
INDEX idx_email (email)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';
|
|
|
|
-- 创建分类类别表
|
|
CREATE TABLE categories (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
name VARCHAR(50) NOT NULL UNIQUE COMMENT '类别名称',
|
|
description TEXT COMMENT '类别描述',
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
INDEX idx_name (name)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文本分类类别表';
|
|
|
|
-- 创建文档表
|
|
CREATE TABLE documents (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
user_id INT NOT NULL COMMENT '上传用户ID',
|
|
original_filename VARCHAR(255) NOT NULL COMMENT '原始文件名',
|
|
stored_filename VARCHAR(255) NOT NULL COMMENT '存储的文件名',
|
|
file_path VARCHAR(255) NOT NULL COMMENT '文件存储路径',
|
|
file_size INT COMMENT '文件大小(字节)',
|
|
content_summary TEXT COMMENT '内容摘要',
|
|
category_id INT COMMENT '分类类别ID',
|
|
upload_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '上传时间',
|
|
classified_time TIMESTAMP NULL COMMENT '分类完成时间',
|
|
status ENUM('待处理', '处理中', '已分类', '处理失败') DEFAULT '待处理' COMMENT '处理状态',
|
|
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (category_id) REFERENCES categories(id) ON DELETE SET NULL,
|
|
INDEX idx_user_id (user_id),
|
|
INDEX idx_category_id (category_id),
|
|
INDEX idx_status (status)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户上传文档表';
|
|
|
|
-- 插入默认的分类类别数据
|
|
INSERT INTO categories (name, description) VALUES
|
|
('体育', '体育相关新闻和内容'),
|
|
('娱乐', '娱乐相关新闻和内容'),
|
|
('家居', '家居相关新闻和内容'),
|
|
('彩票', '彩票相关新闻和内容'),
|
|
('房产', '房产相关新闻和内容'),
|
|
('教育', '教育相关新闻和内容'),
|
|
('时尚', '时尚相关新闻和内容'),
|
|
('时政', '时政相关新闻和内容'),
|
|
('星座', '星座相关新闻和内容'),
|
|
('游戏', '游戏相关新闻和内容'),
|
|
('社会', '社会相关新闻和内容'),
|
|
('科技', '科技相关新闻和内容'),
|
|
('股票', '股票相关新闻和内容'),
|
|
('财经', '财经相关新闻和内容');
|
|
|