你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
PostgreSQL 扩展通过三种方式与 AI 助手集成:@pgsql 聊天参与功能(仅限 Visual Studio Code)、代理模式工具,以及 PostgreSQL 工具 MCP 服务器提供方。 此页面可帮助你选择正确的入口点并了解适用于所有三个项的共享配置。
该扩展在Visual Studio Code(带有GitHub Copilot)和 Cursor(其内置 AI)中运行。 大多数功能在两个编辑器中的工作方式都相同;少数编辑器特有的行为会在本文中单独说明。
先决条件
在使用任何 AI 辅助功能之前,请确保满足以下要求:
- 已安装 PostgreSQL 扩展,并且至少配置了一个数据库连接。
- 编辑器中提供了 AI 助手:
- Visual Studio Code:安装GitHub Copilot或GitHub Copilot聊天并使用活动订阅登录。
- Cursor:无需额外安装;内置 AI 会自动启用。
Note
默认情况下启用Copilot功能(pgsql.copilot.enable为true)。 当你将此项设置为 false 时,@pgsql 聊天参与者(仅限 Visual Studio Code)、AI 查询操作 编辑器子菜单、代理模式工具和 MCP 服务器提供程序都将被隐藏。
Tip
当已有活动数据库连接时,AI 帮助效果最佳。 如果尚未连接,请从 连接和标识开始。
选择正确的入口点
| 如果你希望... | 从这里开始 | Availability | Learn more |
|---|---|---|---|
| 就您的数据库提出一个与其架构相关的问题 | @pgsql 聊天参与者 | 仅限 Visual Studio Code | @pgsql 聊天参与者 |
| 在特定数据库已处于作用域内的情况下启动 Agent 模式 | 从连接树中的数据库节点连接Connect AI | Visual Studio Code和游标 | 代理模式 |
| 从编辑器解释、重写或分析 SQL | 编辑器上下文菜单中的 AI 查询操作子菜单 | Visual Studio Code和游标 | 编辑器操作 |
| 自动执行多步骤数据库任务 | 在数据库节点上连接 AI 以启动代理模式 | Visual Studio Code和游标 | 代理模式 |
| 向 MCP 兼容的主机公开 PostgreSQL 工具 | PostgreSQL 工具的 MCP 服务器提供程序 | Visual Studio Code和游标 | MCP 服务器 |
使用 @pgsql 进行架构感知聊天
Note
@pgsql聊天参与者仅在Visual Studio Code中注册,并在其中集成到 GitHub Copilot 对话助手。 在 Cursor 中,从连接树中的数据库节点使用 Connect AI 启动具有相同架构上下文的代理模式,或依赖于 Cursor 的本机聊天图面中的 MCP 服务器。
该扩展在 GitHub Copilot 对话助手 中注册了一个 @pgsql 聊天参与者(ID:vscode-postgresql.chat-agent),用于支持架构感知对话。 输入 @pgsql,然后输入你的问题,参与者会使用来自你所连接数据库的实时架构上下文进行回答。
若要在当前作用域内的数据库上启动由工具驱动的工作流,请右键单击 连接 树中的数据库节点,然后选择 连接 AI。
有关终端用户指南、示例提示词和故障排除,请继续查看 @pgsql chat participant。
使用编辑器操作获取以查询为中心的帮助
在查询编辑器中打开 SQL 时,右键单击可查找 AI 查询操作 子菜单。 它包含以下操作:
| Action | Description |
|---|---|
| 解释查询 | 返回查询所执行的操作的纯语言说明。 |
| 重写查询 | 建议在保留预期结果的同时提供查询的替代版本。 |
| 分析查询性能 | 针对连接的数据库运行 EXPLAIN ANALYZE ,然后将执行计划发送到 AI 进行分析。 |
您还可以从编辑器工具栏中选择“就此查询询问 AI”,以打开一个基于当前编辑器内容的聊天会话。
若要重置计划分析中已记住的查询包含选择,请在命令面板中运行 清除 AI 分析的查询包含首选项。
将代理模式用于工具驱动的工作流
代理模式允许 AI 助手访问 PostgreSQL 工具,以便它可以连接、检查架构、运行查询、打开脚本,并在一个对话中完成多步骤任务。 右键单击 “连接 ”树中的数据库节点,然后选择“ 连接 AI ”以启动代理模式会话。
对于工具系列、示例工作流和故障排除,请继续进入 代理模式。
在支持的主机中使用 MCP 服务器
该扩展注册 PostgreSQL 工具 MCP 服务器提供程序 (ID: pgsql-tools-mcp-server-provider),该提供程序通过模型上下文协议公开相同的 PostgreSQL 工具图面。 MCP 兼容的主机可以在不使用内置聊天工作流的情况下发现和调用这些工具。
对于支持的主机、自动注册行为以及通过 MCP 公开的工具系列,请继续访问 MCP 服务器。
配置访问模式
该 pgsql.copilot.accessMode 设置用于控制 AI 助手在 Agent 模式和 MCP 工具中获得多少数据库访问权限。 默认值为 “读/写 ”(rw)。
| 设置值 | UI 标签 | AI 助手可以执行的操作 |
|---|---|---|
ro |
只读 | 只读操作:SELECT、SHOW、EXPLAIN、架构检查 |
rw |
读/写 | 读取操作、数据修改语句和 DDL 语句,且需显式确认 |
每个连接的覆盖设置
还可以在单个连接上设置访问模式。 在连接对话框中,展开Copilot部分(Cursor 中的 AI),并将Copilot访问模式(游标中的 AI 访问模式)设置为以下选项之一:
| 选项 | Behavior |
|---|---|
| 使用全局设置 | 回退为全局值 pgsql.copilot.accessMode(默认值) |
| 只读 | 强制对此连接进行只读访问,而不考虑全局设置 |
| 读/写 | 强制对该连接启用读/写访问权限,无论全局设置如何 |
该扩展按以下回退链确定有效的访问模式:每个连接的值 → 全局 pgsql.copilot.accessMode 设置 → 默认值(rw)。
Caution
除非您明确希望 AI 助手能够对数据库架构或数据进行更改,否则对于生产数据库,请使用 只读。
配置其他设置
| 设置 | 它控制的内容 | 违约 |
|---|---|---|
pgsql.copilot.enable |
启用或禁用扩展中的所有 AI 集成 | true |
pgsql.copilot.accessMode |
全局 AI 访问模式(只读 或 读/写) | rw |
pgsql.copilot.autoAttachQuery |
使用 AI 分析计划时是否包含 SQL 查询文本: 每次询问、 始终包含还是 从不包含 | ask |
pgsql.copilot.modelOptions |
扩展的 AI 工作流的高级模型调优(最大令牌数、温度、top_p) | - |
在两个编辑器中设置 ID 保留 pgsql.copilot.* 前缀以实现向后兼容性,即使用户可见标签显示“AI”。
针对特定功能的 AI 集成
多个功能包括专用 AI 集成点:
| 功能 | AI 功能 |
|---|---|
| 查询计划可视化工具 | 使用Copilot 分析执行计划数据(或在 Cursor 中使用AI 分析) |
| 服务器仪表板 | 通过询问 Copilot按钮(在 Cursor 中为Ask AI)从Queries、Waits、Sessions和指标图表面板打开聊天会话 |
| 架构可视化工具 | 可视化代理模式工作流中的架构关系 |