PostgreSQL Field Guide

AI / Agent 文档入口

让模型在明确 schema、权限、成本和失败语义下使用 PostgreSQL

模型不会因为“会写 SQL”就理解你的数据库。可靠系统需要把数据库上下文变成契约,把执行能力收窄成工具,并把正确性变成可重复评估。

推荐架构

用户意图
  → 任务分类(读 / 写 / DDL / 运维)
  → 检索 schema 契约与相关文档
  → 模型生成结构化 tool call
  → 策略层校验 AST、权限、成本与参数
  → 受限数据库角色执行
  → 返回行数、SQLSTATE、耗时与截断状态
  → 记录审计事件

数据库凭据不进入模型上下文。模型不直接选择连接目标。工具层必须绑定环境、database、schema 和 role。

风险分级

等级例子默认策略
R0列表、描述 schema、带上限的只读查询自动执行,短超时
R1读取敏感列、较大聚合权限过滤、审计、成本上限
R2INSERT / 有主键条件的单行 UPDATEdry-run + 业务 API 或明确确认
R3批量写、DDL、权限、复制、备份恢复不向通用 Agent 暴露;专家流程

提示词不是安全边界

“不要删数据”只是一条行为建议。真正的边界来自数据库角色、网络隔离、只读事务、SQL 解析与工具白名单。

最小成功标准

一个可上线的数据库 Agent 至少应做到:所有值参数化;默认只读;限制语句时间和结果行数;拒绝多语句;不向模型返回 secret;记录查询指纹和审计信息;针对 4000140P0157014 等状态码有确定行为。

Last updated on

On this page