Rövid útmutató: A GitHub Copilot-ügynök mód használata

Az ügynökmód lehetővé teszi, hogy a GitHub Copilot összehangolja a Visual Studio Code-hoz készült MSSQL-bővítmény által biztosított eszközöket. Amikor a bővítmény telepítve van és aktív, GitHub Copilot listázhatja Microsoft SQL Server kapcsolatokat, csatlakozhat egy kiszolgálóhoz és adatbázishoz, lekérheti a séma metaadatait, és lekérdezéseket hajthat végre, mindezt természetes nyelvű kérésekből, az egyes műveletek jóváhagyásával.

Minden művelet ugyanazt a kapcsolati környezetet és hitelesítő adatokat használja, mint az MSSQL-bővítmény. Az ügynök mód nem vezet be újabb hitelesítési vagy engedélymódosításokat.

Tip

Ügynök mód használata többlépéses munkafolyamatokhoz, nagy léptékű feltáráshoz és delegált módosításokhoz. Ha egyetlen válaszra vagy egy egylövetű lekérdezésre van szüksége, használja a kérdező módot . A tervmódot akkor használja, ha a Transact-SQL (T-SQL) adatdefiníciós nyelv (DDL) írása előtt meg kell indokolnia egy tervet.

A legfontosabb tudnivalók

  • Az ügynök mód automatikusan felveszi az MSSQL-bővítményeszközöket. Nincs @mssql szükség említésre.
  • Minden eszközhíváshoz jóváhagyásra van szükség a végrehajtás előtt.
  • Az ügynök mód az eszközein keresztül sémaérzékeny : minden eszközhívás valós adatokat ad vissza a csatlakoztatott adatbázisból.
  • Az architekturális környezet minden felületen való megjelenítéséhez tekintse meg az MSSQL-bővítmény GitHub Copilot működését ismertető témakört.

Mikor érdemes ügynök üzemmódot használni?

Az ügynök mód a legjobban a következő célokra használható:

  • Többlépéses munkafolyamatok. Csatlakozz a LocalDevhez, válts az AdventureWorksre, majd mutasd meg az összes olyan táblát, amely idegen kulccsal hivatkozik a Customer táblára.
  • Nagy léptékű feltárás. "Keresse meg azokat a tárolt eljárásokat, amelyek a SalesOrderHeaderre hivatkoznak, és összegzik az egyes műveletek eredményeit."
  • Delegált módosítások. "Adjon hozzá naplózási oszlopokat az Értékesítési séma minden táblához, és hozza létre újra a kapcsolódó tárolt eljárásokat."

Akkor használja a kérdező módot , ha egyetlen kérdés vagy egy egyoldalas lekérdezés választ ad az igényeire. Perjelparancsokat akkor használjon, ha már tudja, hogy melyik műveletet szeretné. A terv üzemmódot akkor használja, ha a módosítások előtt írásos tervet szeretne.

Az ügynök mód eszközök kiválasztásával és végrehajtásával kapcsolatos részletekért tekintse meg az ügynök mód Visual Studio Code dokumentációját.

Mi az az ügynök mód?

Az Ügynök mód lehetővé teszi, hogy a GitHub Copilot SQL-hez kapcsolódó műveleteket hajt végre az MSSQL-bővítmény használatával, és a végrehajtás előtt felhasználói megerősítésre van szükség.

Ezeket a műveleteket csevegési változók, például #mssql_connect, használatával hívhatja meg, vagy természetes nyelvi kérések kiadásával, például:

Connect to my Library database using my LocalDev profile

Képernyőkép a GitHub Copilot Agent módú csevegőfelületéről.

MSSQL-ügynök mód eszközreferenciája

Ez a szakasz részletesen ismerteti a GitHub Copilot Agent módban elérhető SQL-specifikus eszközöket. Az MSSQL-bővítmény hozzájárul ezekhez az eszközökhöz, így a GitHub Copilot csevegőváltozókon vagy természetes nyelvi kéréseken keresztül hajthat végre műveleteket. Minden eszközhöz felhasználói megerősítés szükséges a végrehajtás előtt.

Képernyőkép az MSSQL-bővítmény által a Copilot Agent módban létrehozott SQL-specifikus eszközök listájáról.

Tip

Csevegőváltozókat is használhat, például #mssql_connect közvetlenül meghívhatja ezeket az eszközöket, vagy természetes nyelven írhat utasításokat, például:

Connect to my development database

A GitHub Copilot automatikusan kezeli az eszközök kiválasztását.

Kapcsolatkezelés

Eszköz neve Description
connect Egy adatbázishoz egy mentett kapcsolatprofil vagy egy megadott kiszolgáló és adatbázis használatával csatlakozik.
disconnect Véget vet az aktuális aktív kapcsolati munkamenetnek.
change_database Egy meglévő kapcsolati munkamenet adatbázisának módosítása.
get_connection_details Lekéri egy adott MSSQL-kapcsolat kapcsolati adatait.
list_servers Felsorolja a környezetében mentett SQL Server-kapcsolatprofilokat.
list_databases Egy csatlakoztatott MSSQL-kiszolgáló összes elérhető adatbázisának listája.

Examples

Használja az alábbi kifejezéseket a GitHub Copilot használatához.

- 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

Képernyőkép a GitHub Copilot-csevegésben egy adatbázishoz való csatlakozáshoz használt ügynökeszközről.

A kapcsolatlogika működése

A GitHub Copilot Agent Mód támogatja az SQL-adatbázishoz való rugalmas kapcsolódást a mentett profilok hivatkozásával, vagy egy kiszolgáló és egy adatbázis közvetlen megadásával. Így működik a kapcsolatlogika.

Mentett profilhoz való csatlakozáskor:

  1. A csatlakozáshoz hivatkoznia kell egy mentett kapcsolatprofil nevére.
  2. A GitHub Copilot az mssql_list_servers eszközzel ellenőrzi, hogy létezik-e a profil.
  3. Az mssql_connect eszköz ezután a mentett profileId és annak paramétereit használja a kapcsolat létrehozásához.

Amikor kiszolgáló és adatbázis megadásával csatlakozik:

  • Ha egy mentett profil megegyezik a megadott kiszolgálóval és adatbázissal:

    1. A GitHub Copilot a találat megkeresésére használja mssql_list_servers .
    2. Ezután a mssql_connect hívása a teljes profilt használva történik.
  • Ha egy mentett profil csak a kiszolgálónak felel meg:

    1. A GitHub Copilot megkeresi a megfelelő kiszolgálóprofilt.
    2. Úgy próbál csatlakozni, hogy a felhasználó által kért adatbázist behelyettesíti ebbe a profilba.
    3. Ha a kapcsolat meghiúsul, hibaüzenet jelenik meg.
  • Ha nincs a megadott kiszolgálónak megfelelő profil:

    • A GitHub Copilot hibát jelez.

Ezzel a rugalmas egyező rendszerrel GitHub Copilot számos kapcsolati forgatókönyvet kezelhet. Minimálisra csökkenti a felhasználói munkát, miközben biztonságos, megerősíthető műveleteket biztosít.

Sémafeltárás

Eszköz neve Description
show_schema Megjeleníti a csatlakoztatott adatbázisséma magas szintű diagramját, beleértve a táblákat és a kapcsolatokat.
list_schemas Egy csatlakoztatott MSSQL-kiszolgáló adatbázisának összes sémáját felsorolja.
list_tables Egy csatlakoztatott MSSQL-kiszolgáló adatbázisának összes táblája.
list_views Egy csatlakoztatott MSSQL-kiszolgáló adatbázisának összes nézetét listázza.
list_functions Egy csatlakoztatott MSSQL-kiszolgáló adatbázisának összes függvényét felsorolja.

Examples

Használja az alábbi kifejezéseket a GitHub Copilot használatához.

- 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?

Képernyőkép az adatbázisséma-vizualizációs eszközről Copilot Agent módban.

Lekérdezés végrehajtása

Eszköz neve Description
run_query SQL-lekérdezést futtat a csatlakoztatott adatbázison.

Examples

Használja az alábbi kifejezéseket a GitHub Copilot használatához.

- 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

Képernyőkép egy ügynökeszközről az adatbázishoz való csatlakozáshoz és az adatok lekéréséhez.

Képernyőkép egy másik példáról, amely egy ügynökeszköz használatával csatlakozik egy adatbázishoz, és adatokat kér le.

Eszközök kezelése ügynök módban

A GitHub Copilot msSQL-specifikus eszközöket és más bővítményekkel kapcsolatos eszközöket használhat a kérés feldolgozása során. Ezeket az eszközöket az Eszközök menü Ügynök mód felületén tekintheti meg, ahol bizonyos eszközöket be- és kikapcsolhat is.

Amikor meghív egy eszközt, különösen ha az a géppel vagy az adatbázissal kommunikál, a GitHub Copilot megerősítést kér a biztonságos végrehajtás érdekében. Az eszközt csak az aktuális munkamenethez, a munkaterülethez vagy véglegesen engedélyezheti.

Az eszközök láthatóságával és jóváhagyásával kapcsolatos további információkért lásd: Eszközjóváhagyások kezelése.

Ügynök mód megerősítési munkafolyamata

Amikor a GitHub Copilot kiválaszt egy eszközt, egy megerősítést kérő párbeszédpanelt kap, amely a kért művelet részleteit jeleníti meg. A kérést explicit módon jóvá kell hagynia, mielőtt bármilyen, a géppel vagy adatbázissal kommunikáló parancsot végrehajthat:

  • Engedélyezés ebben a munkamenetben
  • Engedélyezés ezen a munkaterületen
  • Mindig engedélyezve

Ez a megerősítési lépés segít a fejlesztési környezettel való biztonságos és szándékos interakciók biztosításában.

Note

A megerősítés ügynök módban történő működésével kapcsolatos további információkért tekintse meg a Visual Studio Code eszközjóváhagyásokkal kapcsolatos dokumentációját.

Ügynök mód parancssori katalógusa

Ezekkel a természetes nyelvű kérésekkel meghívhatja az MSSQL-bővítményeszközöket ügynök módban. Minden kategóriához fel van tüntetve a megfelelő perjeles parancs vagy kérdezési módhoz tartozó prompt kereszthivatkozása.

Kapcsolatkezelés

Connect to my LocalDev profile and set AdventureWorks as the active database.
List all my saved connection profiles and tell me which one I'm currently connected to.
Disconnect from my current database.

Egyenértékű perjelparancsok: /connect, /listServers, /changeDatabase, /disconnect.

Sémafeltárás

Show me every table in the SalesLT schema, grouped by whether they're
referenced by a foreign key from another table.
Find all stored procedures that reference SalesLT.SalesOrderHeader and
summarize what each one does in one sentence.
Which tables in the current database have no primary key?

A megfelelők kérdéseket tesznek fel: lásd: Csevegés a @mssql résztvevővel.

Lekérdezés végrehajtása

Run a query to count the number of active customers in SalesLT.Customer,
then show me the top 10 by order total.
Show me the execution plan for this query: SELECT ... FROM ...
Execute the last query I ran against my Dev database instead.

Többlépéses munkafolyamatok

Connect to LocalDev, switch to AdventureWorks, list all tables with a
foreign key to SalesLT.Customer, and save the list to a file called
customer-dependents.md.
Find every stored procedure that uses dynamic SQL and open each one
in a new editor tab so I can review them.

Delegált sémamódosítások

Note

A sémamódosításokat érdemes először tervezési módban futtatni. Tervezze meg a módosításokat, tekintse át őket, majd adja át a tervet ügynök módba a végrehajtáshoz.

Add createdAt and updatedAt audit columns to every table in the Sales
schema that doesn't already have them. Use DATETIME2(7) with a default
of GETUTCDATE().
Regenerate every stored procedure that inserts into SalesLT.Customer
to include the new email column.