office_intelligent_drafting/init.sql

57 lines
2.0 KiB
SQL

-- 办公智能编稿系统数据库初始化脚本
-- 创建用户表
CREATE TABLE IF NOT EXISTS users (
id SERIAL PRIMARY KEY,
username VARCHAR(50) UNIQUE NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
password_hash VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建文档表
CREATE TABLE IF NOT EXISTS documents (
id SERIAL PRIMARY KEY,
user_id INTEGER REFERENCES users(id),
title VARCHAR(200) NOT NULL,
content TEXT,
doc_type VARCHAR(50),
status VARCHAR(20) DEFAULT 'draft',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建知识库表
CREATE TABLE IF NOT EXISTS knowledge_base (
id SERIAL PRIMARY KEY,
title VARCHAR(200) NOT NULL,
content TEXT,
category VARCHAR(50),
tags TEXT[],
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建对话记录表
CREATE TABLE IF NOT EXISTS conversations (
id SERIAL PRIMARY KEY,
user_id INTEGER REFERENCES users(id),
agent_type VARCHAR(50),
question TEXT,
answer TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 插入示例数据
INSERT INTO knowledge_base (title, content, category, tags) VALUES
('Vue.js 基础知识', 'Vue.js 是一个用于构建用户界面的渐进式框架...', '技术文档', ARRAY['Vue', 'JavaScript', '前端']),
('项目管理最佳实践', '有效的项目管理需要明确的目标设定...', '管理', ARRAY['项目管理', '团队协作']),
('数据分析方法论', '数据分析是从数据中提取有价值信息的过程...', '数据科学', ARRAY['数据分析', '统计学']);
-- 创建索引
CREATE INDEX IF NOT EXISTS idx_documents_user_id ON documents(user_id);
CREATE INDEX IF NOT EXISTS idx_documents_type ON documents(doc_type);
CREATE INDEX IF NOT EXISTS idx_conversations_user_id ON conversations(user_id);
CREATE INDEX IF NOT EXISTS idx_knowledge_category ON knowledge_base(category);