直接使用 SQL
这正是 basedb 存在的意义:您的数据表就是真正的数据表。任何 PostgreSQL 客户端都可以按名称读取它们。
| 对象 | 物理名称 | 示例 |
|---|---|---|
| 数据库 | 模式(schema)b_<tenant>_<nom> | b_t4z56fq_ventes |
| 预发布环境 | 加上后缀的模式 | b_t4z56fq_ventes_recette |
| 数据表 | slug 化后的名称 | opportunites |
| 字段 | slug 化后的名称 | echeance |
| 关联 | <table cible>_id | clients_id |
| SQL 视图 | 其技术名称,位于数据库的模式中 | factures_a_encaisser |
每个数据库的 API 与 MCP 文档页面会列出所有名称,psql 中的 \d 会显示描述(COMMENT ON)。
标签栏中的 +,或数据库的 ⋯ 菜单 → SQL 查询:一个带语法高亮和自动补全的编辑器,结果显示在与数据表相同的网格中。

- 每个人都以自己的权限读取:可管理级别可访问整个数据库,包括写入;其他成员编写的 SQL 为只读,对其不开放的数据表并不存在,隐藏的字段会消失。
- 查询可以保存在数据表下方——供自己、整个数据库或指定用户组使用——如有需要,还可以变为 SQL 视图:一个真正的 PostgreSQL 视图,与数据表并列,并可从
psql读取。
详见查询与 SQL 视图。
通过 psql
Section titled “通过 psql”使用随附的 docker-compose.yml 时,PostgreSQL 发布在 127.0.0.1:5432 上:
psql "postgres://basedb:<POSTGRES_PASSWORD>@localhost:5432/basedb"SET search_path = b_t4z56fq_ventes;
SELECT o.nom, o.montant, c.nom AS clientFROM opportunites oJOIN clients c ON c._id = o.clients_idWHERE o.statut = 'gagne';这个账户是数据库的所有者:它能读取一切,basedb 的权限对它不起作用。若要用于 BI 工具,请另外创建一个拥有自己 GRANT 的角色。如果某张数据表带有行规则,PostgreSQL 会对其启用行级安全性:这样的角色如果没有 BYPASSRLS 属性或专属的策略,就看不到任何行。
用 SQL 写入
Section titled “用 SQL 写入”这是允许的。约束(单选、关联、链接、必填)由 PostgreSQL 维护,会像在界面中一样拒绝无效值。而且写入会记入历史:历史记录将其显示为“直接 SQL 会话”,并附上执行它的会话;它也可以像其他写入一样被撤销。
basedb 是 AI 原生软件工作室 Eodia 出品的自由软件。