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
MSSQL 代理程式模式工具參考
本節提供 GitHub Copilot 代理程式模式中可用 SQL 特定工具的詳細參考。 MSSQL 延伸模組會提供這些工具,讓 GitHub Copilot 透過聊天變數或自然語言提示來執行動作。 執行之前,所有工具都需要用戶確認。
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 代理程式模式支持彈性的方式,透過參考已儲存的配置檔或直接指定伺服器和資料庫,來連線到 SQL 資料庫。 以下是連線邏輯的運作方式:
當您透過已儲存的個人資料連線時:
- 用戶可以藉由參考已儲存連接配置檔的名稱來連線。
- GitHub Copilot 會使用
mssql_list_servers工具來驗證設定檔是否存在的。 - 接著,工具
mssql_connect會使用已儲存的profileId及其參數來建立連線。
當您透過伺服器/資料庫規格連線時:
如果儲存的設定檔符合指定的伺服器和資料庫:
- GitHub Copilot 會使用
mssql_list_servers來尋找相符專案。 - 然後,它會使用完整設定檔來呼叫
mssql_connect。
- GitHub Copilot 會使用
如果已儲存的設定檔僅適用於伺服器:
- GitHub Copilot 會尋找相符的伺服器配置檔。
- 它會嘗試藉由將使用者要求的資料庫整合進入該配置檔來連線。
- 如果連線失敗,則會顯示錯誤。
如果沒有任何檔案符合指定的伺服器:
- 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?
查詢執行
| 工具名稱 | 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 工具核准的說明文件。