Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La modalità agente consente di GitHub Copilot orchestrare gli strumenti forniti dall'estensione MSSQL per Visual Studio Code. Quando l'estensione è installata e attiva, GitHub Copilot può elencare le connessioni Microsoft SQL Server, connettersi a un server e a un database, recuperare i metadati dello schema ed eseguire query, tutte da prompt in linguaggio naturale, con l'approvazione in ogni azione.
Tutte le azioni usano lo stesso contesto di connessione e le stesse credenziali dell'estensione MSSQL. La modalità agente non introduce altre modifiche all'autenticazione o all'autorizzazione.
Tip
Usare la modalità agente per flussi di lavoro in più passaggi, esplorazione su larga scala e modifiche delegate. Usare la modalità ask quando è necessaria una singola risposta o una query monouso. Usare la modalità piano quando è necessario ragionare su una progettazione prima di scrivere Transact-SQL (T-SQL) data definition language (DDL).
Messaggi chiave:
- La modalità agente preleva automaticamente gli strumenti di estensione MSSQL. Nessuna
@mssqlmenzione obbligatoria. - Ogni chiamata di strumento richiede l'approvazione prima dell'esecuzione.
- La modalità agente è compatibile con lo schema tramite i relativi strumenti: ogni chiamata di strumento restituisce dati reali dal database connesso.
- Per il contesto dell'architettura in tutte le superfici, vedere Come funziona GitHub Copilot con l'estensione MSSQL.
Quando usare la modalità agente
La modalità agente è ideale per:
- Flussi di lavoro in più passaggi. "Connetti a LocalDev, passa a AdventureWorks, quindi mostra ogni tabella con una chiave esterna al cliente".
- Esplorazione su larga scala. "Trovare tutte le stored procedure che fanno riferimento a SalesOrderHeader e riepilogare le operazioni che ognuno esegue".
- Modifiche delegate. "Aggiungere colonne di controllo a ogni tabella nello schema Sales e rigenerare le stored procedure correlate".
Usare la modalità ask quando una singola domanda o una query monouso risponde alle proprie esigenze. Usare i comandi slash quando si conosce già l'azione desiderata. Usare la modalità piano quando si desidera un piano scritto prima di eventuali modifiche.
Per informazioni dettagliate su come la modalità agente seleziona ed esegue gli strumenti, vedere la documentazione Visual Studio Code sulla modalità agente.
Che cos'è la modalità agente?
La modalità agente consente a GitHub Copilot di eseguire azioni correlate a SQL usando l'estensione MSSQL e la conferma dell'utente è necessaria prima dell'esecuzione.
È possibile richiamare queste azioni usando variabili di chat come #mssql_connect, o inviando richieste equivalenti in linguaggio naturale, ad esempio:
Connect to my Library database using my LocalDev profile
Informazioni di riferimento per lo strumento modalità agente MSSQL
Questa sezione fornisce un riferimento dettagliato per gli strumenti specifici di SQL disponibili in modalità Agente Copilot di GitHub. L'estensione MSSQL contribuisce a questi strumenti, consentendo a GitHub Copilot di eseguire azioni tramite variabili di chat o prompt del linguaggio naturale. Tutti gli strumenti richiedono la conferma dell'utente prima dell'esecuzione.
Tip
È anche possibile usare variabili di chat come #mssql_connect richiamare direttamente questi strumenti o scrivere richieste in linguaggio naturale, ad esempio:
Connect to my development database
GitHub Copilot gestisce automaticamente la selezione degli strumenti.
Gestione delle connessioni
| Nome dello strumento | Description |
|---|---|
connect |
Si connette a un database utilizzando un profilo di connessione salvato o un server e un database specificati. |
disconnect |
Termina la sessione di connessione attiva corrente. |
change_database |
Modifica il database per una sessione di connessione esistente. |
get_connection_details |
Ottiene i dettagli della connessione per una connessione MSSQL specifica. |
list_servers |
Elenca tutti i profili di connessione di SQL Server salvati nell'ambiente in uso. |
list_databases |
Elenca tutti i database disponibili per un server MSSQL connesso. |
Examples
Usare le frasi seguenti per interagire con 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
Funzionamento della logica di connessione
La modalità agente di GitHub Copilot supporta modi flessibili per connettersi al database SQL, facendo riferimento ai profili salvati o specificando direttamente un server e un database. Ecco come funziona la logica di connessione.
Quando ci si connette con un profilo salvato:
- Ci si connette facendo riferimento al nome di un profilo di connessione salvato.
- GitHub Copilot usa lo
mssql_list_serversstrumento per verificare l'esistenza del profilo. - Lo
mssql_connectstrumento usa quindi i parametri salvatiprofileIde i relativi parametri per stabilire la connessione.
Quando ci si connette specificando un server e un database:
Se un profilo salvato corrisponde sia al server che al database specificati:
- GitHub Copilot usa
mssql_list_serversper trovare la corrispondenza. - Chiama quindi
mssql_connectusando il profilo completo.
- GitHub Copilot usa
Se un profilo salvato corrisponde solo al server:
- GitHub Copilot trova il profilo server corrispondente.
- Tenta di connettersi sostituendo il database richiesto dall'utente in tale profilo.
- Se la connessione non riesce, viene visualizzato un errore.
Se nessun profilo corrisponde al server specificato:
- GitHub Copilot segnala un errore.
Questo sistema di corrispondenza flessibile consente di GitHub Copilot gestire una serie di scenari di connessione. Riduce al minimo lo sforzo dell'utente garantendo azioni sicure e verificabili.
Esplorazione dello schema
| Nome dello strumento | Description |
|---|---|
show_schema |
Visualizza un diagramma generale dello schema del database connesso, incluse tabelle e relazioni. |
list_schemas |
Elenca tutti gli schemi in un database per un server MSSQL connesso. |
list_tables |
Elenca tutte le tabelle in un database per un server MSSQL connesso. |
list_views |
Elenca tutte le viste in un database per un server MSSQL connesso. |
list_functions |
Elenca tutte le funzioni in un database per un server MSSQL connesso. |
Examples
Usare le frasi seguenti per interagire con 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?
Esecuzione della query
| Nome dello strumento | Description |
|---|---|
run_query |
Esegue una query SQL sul database al quale è connesso. |
Examples
Usare le frasi seguenti per interagire con 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
Modalità di gestione degli strumenti in modalità agente
GitHub Copilot può usare strumenti specifici di MSSQL e altri strumenti forniti dall'estensione durante l'elaborazione della richiesta. È possibile visualizzare questi strumenti nell'interfaccia Modalità agente nel menu Strumenti , in cui è anche possibile attivare o disattivare strumenti specifici.
Quando si richiama uno strumento, soprattutto se interagisce con il computer o il database, GitHub Copilot chiede conferma per garantire l'esecuzione sicura. È possibile consentire lo strumento solo per la sessione corrente, l'area di lavoro o in modo permanente.
Per altre informazioni sulla visibilità e le approvazioni degli strumenti, vedere Gestire le approvazioni degli strumenti.
Flusso di lavoro di conferma della modalità agente
Quando GitHub Copilot seleziona uno strumento, viene visualizzata una finestra di dialogo di conferma che mostra i dettagli sull'azione richiesta. È necessario approvare in modo esplicito la richiesta prima di poter eseguire tutti i comandi che interagiscono con il computer o il database:
- Consenti in questa sessione
- Consenti in quest'area di lavoro
- Consenti sempre
Questo passaggio di conferma garantisce interazioni intenzionali e sicure con l'ambiente di sviluppo.
Note
Per altre informazioni sul funzionamento della conferma in tutti gli strumenti in modalità agente, vedere la documentazione di Visual Studio Code sulle approvazioni degli strumenti.
Catalogo richieste modalità agente
Usare questi prompt in linguaggio naturale per richiamare gli strumenti di estensione MSSQL tramite la modalità agente. Per ogni categoria, viene fatto riferimento incrociato a un comando barra equivalente o un prompt della modalità di richiesta .
Gestione delle connessioni
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.
Comandi slash equivalenti: /connect, /listServers, /changeDatabase, /disconnect.
Esplorazione dello schema
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?
Equivalenti chiedono prompt: vedere Chat con il @mssql partecipante.
Esecuzione della query
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.
Flussi di lavoro in più passaggi
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.
Modifiche dello schema delegate
Note
Le modifiche dello schema sono candidati validi per l'esecuzione tramite la modalità di piano . Pianificare le modifiche, esaminarle, quindi consegnare il piano alla modalità agente per l'esecuzione.
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.
Contenuti correlati
- Funzionamento di GitHub Copilot con l'estensione MSSQL
-
Avvio rapido: Chatta con il partecipante
@mssql(modalità Ask) - Guida introduttiva: Usare la modalità di piano per la progettazione di database basata su specifiche
- Guida introduttiva: Utilizzare i comandi slash di GitHub Copilot
- Guida introduttiva: Usare istruzioni personalizzate per allineare GitHub Copilot alle convenzioni T-SQL
- Guida introduttiva: Generare codice
- Guida introduttiva: Progettare gli schemi visivamente con scenari di GitHub Copilot incorporati
- Guida introduttiva: Usare il generatore di query intelligenti
- Guida introduttiva: Assistente di ottimizzazione delle query
- Integrazioni di mapping relazionali a oggetti con GitHub Copilot
- Limitazioni e problemi noti