SQL Server Management Studio(SSMS)中用于GitHub Copilot的聊天窗口支持在 SSMS 中增强的 AI 辅助数据库管理和开发。 使用 SQL 数据库时,它有助于提高生产力和效率。 目前,聊天窗口仅执行 SELECT 查询(只读)。
本文介绍如何在 SSMS 中使用GitHub Copilot聊天,这是 SSMS 中直接存在的GitHub Copilot完全集成的 AI 驱动的聊天体验。 它使你可以获得Transact-SQL(T-SQL)支持,包括语法和特定于上下文的帮助,而无需离开 SSMS UI。 使用聊天界面以提示形式提交您的问题,并提供意图以便获得更精确的答案。
为什么在 SSMS 中使用 GitHub Copilot 对话助手?
GitHub Copilot 对话助手提供了 AI 帮助,帮助你做出有关 SQL 数据库的明智决策,并更快地编写更好的 T-SQL。 集成到包含连接上下文和架构理解的 SSMS 中后,GitHub Copilot 对话助手 可以了解您正在处理的内容,并可以协助完成以下任务:
T-SQL 帮助:
- 获取与上下文相关的代码建议和推荐。
- 了解和记录查询的作用。
- 获取在查询中修复语法错误的帮助。
- 重构查询。
数据库管理:
- 获取管理设置、安全性等的帮助。
- 配置和监视数据库维护。
- 实现新的 SQL 功能。
数据库开发:
- 架构设计。
- 数据类型选择。
- 索引建议。
先决条件
若要在 SSMS 中使用GitHub Copilot 对话助手,需要 SSMS 22 或更高版本,以及具有
在 SSMS 中使用Copilot 对话助手
使用自然语言询问数据库和 T-SQL 问题,GitHub Copilot 对话助手在数据库及其连接上下文中回答这些问题。
可以在两个位置向Copilot提问这些问题:在聊天窗口中,或直接在代码中使用内联聊天。 在需要修改或添加到编辑器中打开的 SQL 文件的问题时,直接在聊天对话中进行可能效果最佳。 使用聊天窗口回答常规 T-SQL 问题。
若要改进Copilot 对话助手的结果,请了解如何使用参考文件、线程和斜杠命令以在Copilot 对话助手中获取具有作用域上下文的更佳答案。
在聊天窗口中提问
SSMS 中Copilot 对话助手的聊天窗口使你能够提问并在聊天窗口中查看答案。 用于数据库帮助和常规 T-SQL 问题,Copilot 通常是首选的协作工具。
- 打开查询编辑器窗口并连接到数据库。
- 在 SSMS 中,选择 View>GitHub Copilot 对话助手。
- 使用聊天窗口中的示例初学者提示开始浏览Copilot 对话助手,或键入提示,然后选择 Enter 或 Send 以提交问题。
- 如果Copilot 对话助手提供要使用的 T-SQL 建议, 选择 Apply将代码应用于活动查询编辑器,Copy 代码块复制建议,或添加到新文件以在新文件中插入代码建议。
- 如果请求有关了解代码的帮助,则 “插入新文件 ”选项不可用。
- 如果选择 “应用”,则代码建议将应用于差异视图模式中的活动编辑器。 可以使用 Tab 查看和优化所建议的内容,并使用 Tab 应用它,或使用 Alt+Delete 将其丢弃。
在内嵌聊天视图中提问
SSMS 中Copilot 对话助手的内联聊天视图使你能够提出问题,并在编辑器窗口中直接查看代码内联答案。 使用内联聊天,无需来回转到聊天窗口。 你可能会发现,针对添加或更新当前打开的 SQL 文件的问题,使用内联聊天与 Copilot 配合起来更容易。
- 在 SSMS 中,选择 Alt+/,在编辑器中显示Copilot 对话助手的内联聊天视图。
- 在询问 Copilot文本框中键入 T-SQL 相关问题,然后选择 Enter 或 Send 提问。
- 来自Copilot 对话助手的代码建议显示在差异视图中。 可以使用 Tab 查看和优化所建议的内容,并使用 Tab 对代码应用更改,或使用 Alt+Delete 将其丢弃。
- 可以通过在 聊天窗口中选择“查看”将内联聊天线程提升到聊天窗口。 将聊天提升到窗口将保留对话的记录和上下文,你可以在聊天窗口中继续。
- 选择 Esc 以关闭内联聊天视图。
注释
在 SSMS 中,GitHub Copilot 执行的查询是基于用户的登录名和权限的,无论是通过聊天窗口还是内联聊天视图进行。 SSMS 中没有单独的GitHub Copilot权限。
为单独的对话创建线程
在聊天会话中提问并发送提示时,Copilot使用聊天提示和响应的历史记录。 前面的提示和响应提供当前聊天提示的上下文。 可以提出后续问题或澄清以前的问题,而无需重复上下文。 例如,可以询问What is the compatibility mode for this database?、What are the differences between compatibility mode 140 and 170?、Do all users need to be out of the system when changing compatibility mode?等等。
使用讨论串为新任务启动新对话。 在聊天窗口中选择“ 创建新线程 ”或 “Ctrl+N ”以启动新线程。 当你想转移到不同的主题并避免先前的讨论背景和历史记录时,新线程会非常有用。 使用线程使对话专注于手头的任务,并保持上下文清晰,以便答案基于相关的历史记录。
切换聊天线程
可以在多个正在进行的线程之间自由切换,为您的问题提供正确的历史背景。 对上一个线程使用 Ctrl+Page Down ,或者在聊天窗口中为下一个线程使用 Ctrl+Page Up 。 Ctrl+Shift+T 展开线程下拉列表。
保留内联聊天
若要保留内联聊天的历史记录,请将其提升到聊天窗口。 在 聊天窗口中选择“查看” 以维护聊天的记录和上下文,并继续在聊天窗口中。
删除聊天线程
若要开始使用新的聊天会话并放弃当前上下文,请选择“ 删除线程”。 删除不再相关的或未提供所需结果的线程。
预览 Markdown 内容
可以直接在 Markdown 编辑器中预览Copilot 对话助手生成的任何 Markdown 内容。 当Copilot 对话助手生成 Markdown 内容时,选择聊天窗口右上角的“预览”按钮以查看呈现的预览。 可以根据需要编辑和保存 Markdown 内容。 如果想要快速可视化和处理 Markdown 文件,而无需手动复制和粘贴,此功能非常有用。
生成美人鱼图
Copilot 对话助手可以生成Mermaid 关系图,包括实体关系、流程图、甘特图等。 然后,可以直接在编辑器中可视化复杂的关系和工作流。
例如,可以使用以下一个或多个提示:
Visualize the relationships between tables in this database as a Mermaid diagramVisualize the relationships between tables in the Orders schema of this database as a Mermaid diagramCreate a Mermaid flowchart for the steps to change the compatibility mode
Copilot使用活动查询编辑器和添加的任何引用来收集上下文,然后在聊天窗口中返回美人鱼语法。 选择 “预览 ”以打开新的 Markdown 文件并查看关系图。 可以保存或共享 Markdown 或呈现的图表以供将来使用。
小窍门
可以使用 Markdown 预览控件在预览 模式之间切换,并放大复杂的美人鱼图。
自定义Copilot 对话助手
可以根据 SSMS 中的工作流和要求自定义Copilot。
使用引用管理上下文:使用 + 按钮附加更多上下文,例如
.sql文件或.sqlplan文件。 有关详细信息,请参阅 在 SQL Server Management Studio 中为 GitHub Copilot 添加上下文。访问不同的模型:使用提示窗口中的模型选取器选择 AI 模型,或将自己的模型引入 Copilot。 了解不同方案的不同模型,无论是回答快速问题、编写文档还是生成代码编辑。 有关详细信息,请参阅 SQL Server Management Studio 中的 GitHub Copilot AI 模型。