Explorar o código

docs: 添加数据库补充表初始化说明文档

说明如何初始化 supplement_tables.sql 中的补充表,
包括 text_storage、vector_embeddings 等表
何文松 hai 1 mes
pai
achega
508ed6b631
Modificáronse 1 ficheiros con 68 adicións e 0 borrados
  1. 68 0
      backend/sql/README_SUPPLEMENT.md

+ 68 - 0
backend/sql/README_SUPPLEMENT.md

@@ -0,0 +1,68 @@
+# 数据库补充表初始化
+
+## 概述
+
+如果您在运行测试时遇到 `relation "text_storage" does not exist` 错误,说明需要执行补充表初始化脚本。
+
+## 初始化步骤
+
+### 方法 1:使用 psql 命令行
+
+```bash
+# 连接到数据库并执行脚本
+psql -U <username> -d lingyue_zhibao -f backend/sql/supplement_tables.sql
+```
+
+### 方法 2:使用数据库客户端工具
+
+1. 打开您的数据库客户端(如 DBeaver、pgAdmin 等)
+2. 连接到 `lingyue_zhibao` 数据库
+3. 打开并执行 `backend/sql/supplement_tables.sql` 文件
+
+### 方法 3:使用 Docker
+
+如果您使用 Docker Compose:
+
+```bash
+# 进入 PostgreSQL 容器
+docker exec -it <postgres_container_name> bash
+
+# 在容器内执行
+psql -U postgres -d lingyue_zhibao -f /path/to/supplement_tables.sql
+```
+
+## 补充表说明
+
+`supplement_tables.sql` 包含以下表:
+
+1. **text_storage** - 文本存储路径表(用于记录解析后的文本文件路径)
+2. **vector_embeddings** - 向量存储表(用于 RAG 检索)
+3. **knowledge_base** - 知识库表
+4. **rag_sessions** - RAG 会话表
+5. **rag_messages** - RAG 消息表
+
+## 注意事项
+
+- 脚本使用 `IF NOT EXISTS`,可以安全地重复执行
+- `vector_embeddings` 表需要 pgvector 扩展,如果未安装,该表创建可能会失败(可以暂时跳过)
+- 部分表使用 UUID 类型,确保 PostgreSQL 支持 UUID 扩展
+
+## 验证
+
+执行以下 SQL 确认表已创建:
+
+```sql
+SELECT table_name 
+FROM information_schema.tables 
+WHERE table_schema = 'public' 
+AND table_name IN ('text_storage', 'vector_embeddings', 'knowledge_base', 'rag_sessions', 'rag_messages');
+```
+
+## 当前测试状态
+
+即使没有执行补充表脚本,文件上传和解析功能仍然可以正常工作。`text_storage` 表的记录失败不会影响主要流程,只是无法记录文本存储路径。
+
+完整的测试流程需要:
+1. 基础表(`init.sql`)- 必需
+2. 补充表(`supplement_tables.sql`)- 推荐
+3. RAG 表(`rag_tables.sql`)- 可选(用于 RAG 功能)