何文松 c849aa6960 feat: 添加数据库重建和补充表初始化脚本 1 mesiac pred
..
README_SUPPLEMENT.md 508ed6b631 docs: 添加数据库补充表初始化说明文档 1 mesiac pred
init.sql 58f8a8599d fix: 修复 preferences 字段类型兼容性问题 1 mesiac pred
init_supplement_only.sh c849aa6960 feat: 添加数据库重建和补充表初始化脚本 1 mesiac pred
rag_tables.sql f8b3530b1e feat(rag): 实现 RAG 向量化存储功能 1 mesiac pred
rebuild_database.sh c849aa6960 feat: 添加数据库重建和补充表初始化脚本 1 mesiac pred
supplement_tables.sql fbdf7c1a3d feat: 添加灵越智报2.0核心数据库表结构设计 1 mesiac pred

README_SUPPLEMENT.md

数据库补充表初始化

概述

如果您在运行测试时遇到 relation "text_storage" does not exist 错误,说明需要执行补充表初始化脚本。

初始化步骤

方法 1:使用 psql 命令行

# 连接到数据库并执行脚本
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:

# 进入 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 确认表已创建:

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 功能)