Condividi tramite


Notebook SQL (in anteprima)

I notebook SQL nell'estensione MSSQL per Visual Studio Code forniscono lo sviluppo SQL basato su notebook usando notebook jupyter nativi di Visual Studio Code. È possibile combinare l'esecuzione interattiva di query SQL con le celle della documentazione markdown per compilare raccolte di query eseguibili, operazioni di database di documenti e condividere l'analisi riproducibile.

Suggerimento

I notebook SQL sono attualmente in anteprima e possono cambiare in base al feedback degli utenti. Partecipare alla community in Discussioni su GitHub per condividere idee o segnalare problemi.

Features

I notebook SQL offrono queste funzionalità:

  • Esegui query T-SQL in modo interattivo nelle celle del codice del notebook con risultati in linea visualizzati sotto ogni cella.

  • Usare il formato nativo del notebook Jupyter di Visual Studio Code (.ipynb file) per garantire la compatibilità completa con gli strumenti notebook già esistenti.

  • Visualizzare i risultati della query in una griglia di dati avanzata con ordinamento, filtro, selezione di celle, evidenziazione dei valori Null e opzioni di copia (inclusa la copia con intestazioni).

  • Scrivere SQL con IntelliSense, inclusi i suggerimenti relativi ai nomi di tabella e colonna in base alla connessione al database attiva.

  • Aggiungere celle di testo Markdown insieme alle celle di codice SQL per documentare query, annotare i risultati e creare flussi di lavoro narrativi.

  • Connettere ogni notebook a un'istanza di SQL Server e passare da un database all'altro nello stesso server.

  • Eseguire le celle singolarmente o eseguire tutte le celle in sequenza.

  • Usare GitHub Copilot per i suggerimenti di query inline nelle celle di codice e la creazione di notebook guidata da chat per generare notebook completi dalle descrizioni del linguaggio naturale.

  • Combinare celle SQL con altri kernel del linguaggio (ad esempio Python) nello stesso notebook installando l'estensione Jupyter.

  • Esportare e condividere notebook come .ipynb file che altri utenti possono aprire in Visual Studio Code o in qualsiasi ambiente compatibile con Jupyter.

Prerequisiti

Prima di usare i notebook SQL, verificare che siano soddisfatti i requisiti seguenti:

Creare un notebook SQL

È possibile creare un nuovo notebook SQL in diversi modi:

  • Aprire il riquadro comandi (CTRL+MAIUSC+P in Windows e Linux o CMD+MAIUSC+P in macOS), digitare New Notebooke selezionare il comando .

  • Passare al menu File e selezionare Nuovo file, quindi scegliere il tipo di notebook di Jupyter.

  • Fare clic con il pulsante destro del mouse su un database in Esplora oggetti dell'estensione MSSQL e scegliere Nuovo notebook dal menu di scelta rapida.

Quando si crea un nuovo notebook, selezionare il kernel MSSQL per abilitare l'esecuzione T-SQL nelle celle di codice.

Connettersi a un database

Ogni notebook SQL richiede una connessione al database attiva per eseguire query. Quando si apre un notebook con il kernel MSSQL, l'estensione richiede di selezionare un profilo di connessione o crearne uno nuovo.

Importante

Ogni notebook supporta una connessione a server singolo per ogni kernel. È possibile connettersi a un'istanza di SQL Server e passare da un database all'altro in tale server, ma non è possibile connettersi a più server all'interno dello stesso notebook. Per usare un server diverso, creare un notebook separato o modificare la connessione del notebook.

Scrivere ed eseguire celle SQL

Le celle di codice SQL consentono di scrivere ed eseguire query T-SQL in modo interattivo all'interno del notebook.

  1. Selezionare + Codice nella barra degli strumenti del notebook per aggiungere una nuova cella di codice.

  2. Immettere la query T-SQL nella cella. La cella offre la stessa esperienza di modifica SQL di un editor di query standard, tra cui IntelliSense con suggerimenti per il nome di tabella e colonna dal database connesso.

  3. Selezionare Esegui cella (pulsante Play a sinistra della cella) per eseguire la query.

  4. I risultati vengono visualizzati direttamente sotto la cella in una griglia di dati avanzata.

Per eseguire tutte le celle del notebook in sequenza, selezionare Esegui tutto nella barra degli strumenti del notebook.

Suggerimento

Usare Ctrl+Invio (Windows e Linux) o Cmd+Invio (macOS) per eseguire la cella corrente e rimanere sulla stessa. Usare MAIUSC+INVIO per eseguire la cella corrente e passare a quella successiva.

Risultati della query

I risultati delle query nei notebook SQL offrono la stessa esperienza avanzata della griglia di dati disponibile nell'editor standard di query.

  • Ordinamento: selezionare un'intestazione di colonna per ordinare i risultati in ordine crescente o decrescente.
  • Filtro: usare l'icona del filtro sulle intestazioni delle colonne per filtrare i dati dei risultati.
  • Selezione cella: selezionare singole celle o intervalli di celle nella griglia dei risultati.
  • Evidenziazione dei valori nulli: NULL i valori vengono evidenziati visivamente nella griglia dei risultati per un'agevole identificazione.
  • Opzioni di copia: fare clic con il pulsante destro del mouse sulle celle selezionate per accedere a Copia, Copia con intestazioni e Selezionare tutte le opzioni.

Aggiungi celle Markdown

È possibile usare le celle Markdown per aggiungere testo formattato, intestazioni, elenchi e collegamenti insieme alle celle del codice SQL. Usarli per documentare le query, spiegare la logica di business o aggiungere note sui risultati previsti.

  1. Selezionare + Markdown nella barra degli strumenti del notebook per aggiungere una nuova cella di testo.

  2. Digitare il contenuto Markdown. Viene visualizzata un'anteprima durante la digitazione.

  3. Selezionare all'esterno della cella per eseguire il rendering del testo Markdown.

Selezionare di nuovo la cella per tornare alla modalità di modifica.

Usare più kernel

L'estensione MSSQL fornisce il kernel SQL predefinito. È possibile estendere i notebook con più kernel del linguaggio installando l'estensione Jupyter, che include il supporto per Python e altri kernel. È possibile combinare query di dati SQL con l'elaborazione dei dati Python e le celle di visualizzazione nello stesso notebook.

Integrazione di GitHub Copilot

GitHub Copilot funziona con i notebook SQL per semplificare la scrittura di query e la generazione di notebook. Quando si installa l'estensione GitHub Copilot, si ottiene:

  • Suggerimenti inline: durante la digitazione nelle celle di codice SQL, GitHub Copilot suggerisce i completamenti delle query in base al contesto del database e alle celle Markdown circostanti.

  • Creazione di notebook basati su chat: usare GitHub Copilot Chat per generare notebook completi con celle alternate di Markdown e SQL. Descrivere l'analisi da eseguire e GitHub Copilot crea la struttura completa del notebook.

Ad esempio, è possibile aprire GitHub Copilot Chat e usare un prompt simile al seguente:

I have a SQL Notebook open connected to AdventureWorks. Create cells for a sales
analysis: list all tables, find top 10 customers by revenue, show revenue by product
category, and demonstrate a safe data modification using BEGIN TRAN / ROLLBACK.

GitHub Copilot genera le celle della documentazione markdown e le celle di codice T-SQL, che possono essere eseguite singolarmente o tutte contemporaneamente usando Esegui tutto.

Cambiare database

Per passare a un database diverso all'interno della stessa connessione server:

  1. Selezionare il nome del database visualizzato nell'area di stato della connessione del notebook.

  2. Scegliere un database diverso dall'elenco a discesa.

Tutte le esecuzioni di celle successive usano il database appena selezionato.

Annotazioni

Per passare a un server diverso, è necessario modificare il profilo di connessione del notebook. Prendere in considerazione la creazione di un notebook separato per ogni server con cui è necessario lavorare.

Limitazioni

Connessione a server singolo per notebook: attualmente ogni notebook si connette a un'istanza di SQL Server. È possibile spostare i database in tale server, ma non è possibile connettersi a un secondo server all'interno dello stesso notebook.

Feedback e supporto

Se si hanno idee, commenti e suggerimenti o si vuole interagire con la community, partecipare alla discussione all'indirizzo https://aka.ms/vscode-mssql-discussions. Per segnalare un bug, visitare https://aka.ms/vscode-mssql-bug. Per richiedere una nuova funzionalità, passare a https://aka.ms/vscode-mssql-feature-request.