unis_crm/sql/README.md

1.5 KiB

SQL Scripts

当前项目的数据库脚本按“一个主初始化脚本 + 一组历史归档脚本”的方式整理:

  • 主初始化脚本:sql/init_full_pg17.sql
  • 历史迁移与修数脚本:sql/archive/*.sql

推荐用法

1. 全新初始化数据库

直接执行主脚本:

psql -d your_database -f sql/init_full_pg17.sql

这份脚本已经吸收了目前项目里所有必要的结构兼容调整,适合作为当前唯一推荐的 PostgreSQL 17 初始化入口。

2. 老环境排查或追溯

历史变更脚本保存在:

  • sql/archive/alter_*.sql
  • sql/archive/fix_*.sql
  • sql/archive/init_pg17.sql

这些文件仅用于:

  • 追溯某次字段演进
  • 排查老环境与当前结构差异
  • 定位某次修数逻辑来源

正常部署时,不建议按时间顺序逐个执行 archive 里的脚本。

当前目录说明

  • sql/init_full_pg17.sql 当前项目的完整初始化脚本,也是唯一推荐执行的入口。

  • sql/archive/init_pg17.sql 旧版本初始化快照,仅保留历史参考,不再作为正式入口。

  • sql/archive/alter_*.sql 历史结构变更脚本。

  • sql/archive/fix_*.sql 历史修数脚本。

维护约定

  • 新增正式字段时,优先更新 sql/init_full_pg17.sql
  • 若该字段来自一次线上增量变更,同时保留对应 sql/archive/alter_*.sql
  • 若只是历史修复,不要反向拆散主初始化脚本

这样可以保证:

  • 新环境只需要执行一份脚本
  • 老环境仍然能追溯每次改动来源