共用方式為


快速入門:使用 GitHub Copilot 代理模式

GitHub Copilot 代理程式模式會將內容相關、動作導向的聊天體驗帶入適用於Visual Studio Code 的 MSSQL 擴充功能。 使用代理程式模式,GitHub Copilot 可以超越建議程式代碼,它可以使用自然語言提示或內建工具安全地執行實際資料庫工作。 您可以列出所有連線、連線到特定的伺服器/資料庫,以及探索架構,而不需要離開編輯器。

Tip

您使用代理程式模式中的 SQL 工具時,無需提及參與者,例如 @mssql。 一旦 MSSQL 擴充功能處於使用中狀態,其工具就會在代理程式模式介面中自動提供。 如需詳細資訊,請參閱 代理程式模式工具

這些動作是由 MSSQL 延伸模組所提供的工具所提供,並直接顯示在 GitHub Copilot 的代理程式模式內。 如需代理程式模式運作方式的詳細資訊,請參閱 代理程式模式的Visual Studio Code 檔

什麼是代理程式模式?

代理模式可讓 GitHub Copilot 超越建議程式碼。 它現在可以在 SQL 開發環境中執行安全且已確認的動作,使用聊天變數,例如 #mssql_connect、 或自然片語,例如:

Connect to my Library database using my LocalDev profile

GitHub Copilot 代理程式模式聊天介面的螢幕快照。

MSSQL 代理程式模式工具參考

本節提供 GitHub Copilot 代理程式模式中可用 SQL 特定工具的詳細參考。 MSSQL 延伸模組會提供這些工具,讓 GitHub Copilot 透過聊天變數或自然語言提示來執行動作。 執行之前,所有工具都需要用戶確認。

MSSQL 擴充功能在 Copilot 代理程式模式中提供之 SQL 特定工具列表的螢幕快照。

Tip

您也可以使用聊天變數,例如 #mssql_connect 直接叫用這些工具,或以自然語言撰寫提示,例如:

Connect to my development database

GitHub Copilot 會自動處理工具選取。

連線管理

工具名稱 Description
connect 使用已儲存的連接設定檔或指定的伺服器/資料庫組建立資料庫連接。
disconnect 終止目前的使用中連線會話。
change_database 變更現有連接會話的資料庫。
get_connection_details 取得特定 MSSQL 連線的連線詳細數據。
list_servers 列出您環境中所有儲存的 SQL Server 連線設定檔。
list_databases 列出連線 MSSQL 伺服器的所有可用資料庫。

Examples

下列片語可用來與 GitHub Copilot 互動。

- Connect to my LocalDev environment
- Disconnect from my current database
- List my available connection profiles
- List all databases in the localhost server
- Set the active connection to localhost
- Set AdventureWorks as the active database
- Get the connection string for AdventureWorks on localhost

使用代理程式工具連線至 GitHub Copilot 聊天中資料庫的範例螢幕快照。

聯機邏輯的運作方式

GitHub Copilot 代理程式模式支持彈性的方式,透過參考已儲存的配置檔或直接指定伺服器和資料庫,來連線到 SQL 資料庫。 以下是連線邏輯的運作方式:

當您透過已儲存的個人資料連線時:

  1. 用戶可以藉由參考已儲存連接配置檔的名稱來連線。
  2. GitHub Copilot 會使用 mssql_list_servers 工具來驗證設定檔是否存在的。
  3. 接著,工具 mssql_connect 會使用已儲存的 profileId 及其參數來建立連線。

當您透過伺服器/資料庫規格連線時:

  • 如果儲存的設定檔符合指定的伺服器和資料庫:

    1. GitHub Copilot 會使用 mssql_list_servers 來尋找相符專案。
    2. 然後,它會使用完整設定檔來呼叫 mssql_connect
  • 如果已儲存的設定檔僅適用於伺服器:

    1. GitHub Copilot 會尋找相符的伺服器配置檔。
    2. 它會嘗試藉由將使用者要求的資料庫整合進入該配置檔來連線。
    3. 如果連線失敗,則會顯示錯誤。
  • 如果沒有任何檔案符合指定的伺服器:

    • GitHub Copilot 報告錯誤。

此彈性比對系統可讓 GitHub Copilot 處理一系列連線案例,將使用者工作降至最低,同時確保安全且可確認的動作。

資料架構探索

工具名稱 Description
show_schema 顯示已連線資料庫架構的高階圖表,包括數據表和關聯性。
list_schemas 列出連接 MSSQL 伺服器之資料庫中的所有架構。
list_tables 列出連接 MSSQL 伺服器之資料庫中的所有資料表。
list_views 列出已連線至 MSSQL 伺服器的資料庫中的所有視圖。
list_functions 列出連接 MSSQL 伺服器之資料庫中的所有函式。

Examples

下列片語可用來與 GitHub Copilot 互動。

- Show me the schema for this database
- Show me all tables in the current database
- List all views from this MSSQL database
- Give me a list of all the functions available in this schema
- What schemas are available in this database?

動畫的螢幕快照,其中顯示 Copilot 代理程式模式中的資料庫架構可視化檢視工具。

查詢執行

工具名稱 Description
run_query 針對連接的資料庫執行 SQL 查詢。

Examples

下列片語可用來與 GitHub Copilot 互動。

- Give me the top five posts published this week
- Execute the current file to find how many comments each post has
- Get all categories along with the number of posts in each

使用代理程式工具來連線到資料庫並擷取數據的範例螢幕快照。

使用代理程式工具連線到資料庫並擷取數據的另一個範例螢幕快照。

如何在代理程式模式中管理工具

GitHub Copilot 可以在處理您的要求時叫用 MSSQL 特定工具和其他擴充功能貢獻的工具。 這些工具會顯示在 [工具] 選單下的 [代理程式模式] 介面中,您可以在其中啟用或停用特定工具。

叫用工具時,特別是當工具與您的計算機或資料庫互動時,GitHub Copilot 會提示確認以確保安全執行。 您可以僅允許工具在當前工作階段使用、在工作區內使用,或永久批准使用。

如需工具可見性和核准的詳細資訊,請造訪 管理工具核准

代理程式模式確認工作流程

當 GitHub Copilot 選取工具時,它會提示您顯示所要求動作的詳細資料確認對話方塊。 您必須先明確核准要求,才能執行與電腦或資料庫互動的任何命令:

  • 允許此會話
  • 在此工作區中允許
  • 始終允許

此確認步驟有助於確保在開發環境中的安全、有意圖的互動。

Note

如需了解確認功能在代理模式下如何跨所有工具運作的詳細資訊,請參閱 Visual Studio Code 工具核准的說明文件