在 SQL Server Management Studio 中為 GitHub Copilot 新增上下文

在 SQL Server Management Studio(SSMS)的 GitHub Copilot 中,透過使用參考資料,以及隱含的上下文知識,為你的提示增添更多上下文,以獲得更好的回應。

隱含內容

SSMS 中的 GitHub Copilot 會根據主動查詢編輯器及其資料庫連線自動提供提示詞的上下文。 聊天上下文隱含以下資訊:

  • 目前在主動查詢編輯器中選取的文字。
  • 查詢編輯器中目前啟用的檔案。
  • 是用於主動查詢編輯器的資料庫連線。

根據你的提示,Copilot 會讀取主動查詢編輯器的內容,或是在編輯器中讀取所選文本。

聊天記錄

當你在一次對話中迭代並發送多個聊天提示時,Copilot 會利用聊天提示和回應的歷史作為你當前提示的上下文。 你可以提出後續問題或澄清之前的問題,而不必重複上下文。 例如,你可以詢問 How do I change the compatibility mode?,接著問 How will this change affect query performance?How do I test changes in query performance?,以及更多。

保持聊天對話開放,並持續迭代並提示 Copilot 改進建議的解決方案。 Copilot 同時包含產生程式碼的上下文和你目前的對話紀錄。 當你持續提問時,Copilot 會根據你的需求進一步優化回應。

使用討論串管理聊天記錄內容

利用討論串讓對話聚焦,並確保回答基於相關歷史。 如需詳細了解如何建立、切換及管理串,請參閱 「建立串以支援獨立對話」。

參考其他檔案

你可以在 SSMS 的主動編輯器中用自然語言提出與 T-SQL 相關的問題,而 GitHub Copilot Chat 會在此環境中提供答案。 推薦人提供你希望 Copilot 在回答問題時能考慮的具體資訊。

透過選擇在編輯器中開啟的其他文件,您也許能夠形成更好的問題,而無需寫出或貼上長篇資訊。 明確說明上下文也能讓 Copilot 提供更相關的答案。

若要在 GitHub Copilot Chat 中引用檔案,請在檔名開頭加上 # 符號。 例如,如果您有一個名為 GetSalesInfo.sql 的檔案,請在聊天中將其稱為 #GetSalesInfo.sql

查看結果面板

從 SSMS 22.5 開始,你可以直接在 GitHub Copilot Chat 中查詢有關結果窗格的組成部分。 在主動編輯器執行查詢後,你可以詢問結果網格或訊息分頁。

例如:

What is the total ItemPrice for lines 1 through 10?

如果結果欄中包含預估或實際執行計畫,您可以詢問:

How do I optimize this query based on the execution plan?

自訂說明

自訂指令讓你能自動在提示中加入上下文細節,而不必每次重複。 你可以在儲存庫根目錄或 USERPROFILE 資料夾建立自訂指令檔案,Copilot Chat 會根據你的偏好調整回應。

例如,你可以指定 Copilot 應遵循的編碼慣例、偏好的 T-SQL 模式或格式標準。

欲了解更多資訊,請參閱在 SQL Server Management Studio 中使用 GitHub Copilot 的自訂指令

資料庫指令

資料庫指令為 Copilot 提供資料庫專屬的上下文與指引,這些內容直接存在於資料庫中。 資料庫擁有者與團隊會使用自訂指令來描述商業規則、資料慣例與使用模式,使 Copilot 能產生更準確且一致的回應。

欲了解更多資訊,請參閱在 SQL Server Management Studio 中使用 GitHub Copilot 與資料庫指令

使用斜線命令進行程式碼輔助

SSMS 中的 GitHub Copilot 提供程式碼協助,幫助你設定常見資料庫開發任務的意圖。 這種意圖能加速生產力,幫助你更快理解並修正問題。 在編輯器中反白顯示任何查詢,並使用斜線命令來記錄、說明、修正或最佳化查詢。 你可以在聊天視窗和內嵌聊天中使用斜杠指令。

Command Usage
/doc 新增選取的 T-SQL 程式碼的註解,以協助下一個查看您程式碼的人瞭解您所做的動作。
/explain 取得所選 T-SQL 程式碼的深入詳細資料。
/fix 解決 T-SQL 程式代碼中的錯誤,並傳回正確的版本以供檢閱,包括問題的說明和變更的內容。
/help 尋求使用 Copilot Chat 的協助。
/optimize 找出查詢中的反模式,並依照 T-SQL 最佳實務進行變更。