j.jev4pg使用文档
接入现有 PostgreSQL 数据
使用指南

接入现有 PostgreSQL 数据

开发版可以将已有表或视图登记到数据目录,直接查询源数据,无需复制行或改变所有权。工作区对这些外部来源保持只读。

登记一张表#

先运行与应用版本匹配的迁移:

bash
jevsd-pg migrate

由数据库管理员授予运行账户必要的读取权限。以下是 business.messages 的示例:

sql
GRANT USAGE ON SCHEMA business TO sdd_app;
GRANT SELECT ON business.messages TO sdd_app;

在部署环境中,使用已配置的运行数据库连接执行:

bash
jevsd-pg attach messages --tenant team --schema business --table messages

messages 是数据目录中的逻辑名称,team 是租户。若名称已占用,应选择新的逻辑名称。登记后可在工作区选择它,也可通过 /ask 或 /data/sql 查询。

控制可见范围#

登记操作不会自动授予 PostgreSQL 权限,也不会自动生成租户筛选条件。不同租户需要不同数据范围时,应先配置源表的行级安全策略。

源表仍由原所有者维护。后续查询能读取已提交的更新,无需重复导入。语义评估仍受所选执行引擎的预算与能力限制。

类型、主键和关系#

登记时读取字段类型、可空性、注释、主键和外键,不扫描数据行。执行时保留 PostgreSQL 的物理类型;API 中的小数和 UUID 使用字符串表示。

可以选择最多 64 个支持的字段。不支持的类型会明确报出,可通过类型明确的视图接入。无主键的数据仍保留重复行;优化的基础字段语义扫描路径需要主键。

复合外键保留所有字段对,不会简化为单字段关系。查询规划也不会把从字段名称或取值推测出的关系自动当作已声明的外键。

本页介绍用法与注意事项。完整参数及详细约定请参阅对应英文文档。