Condividi tramite


Guida introduttiva: Connettersi ed eseguire query su un database SQL di Azure usando SQL Server Management Studio (SSMS)

Si applica a:Database SQL di Azure

Introduzione all'uso di SQL Server Management Studio (SSMS) per connettersi al database SQL di Azure ed eseguire alcuni comandi di Transact-SQL (T-SQL).

Annotazioni

Anche se Microsoft Entra ID è il nuovo nome per Azure Active Directory (Azure AD), per evitare l'interruzione degli ambienti esistenti, la denominazione Azure AD è tuttora mantenuta in alcuni elementi hardcoded, ad esempio campi dell'interfaccia utente, provider di connessioni, codici errore e cmdlet. All’interno di questo articolo i due nomi vengono utilizzati in modo intercambiabile.

L'articolo illustra i passaggi seguenti:

  • Connettersi a un server logico del database SQL di Azure
  • Creazione di un database
  • Creare una tabella nel nuovo database
  • Inserire righe nella nuova tabella
  • Eseguire una query sulla nuova tabella e visualizzare i risultati
  • Usare la tabella della finestra di query per verificare le proprietà di connessione
  • Rimuovere il database

Prerequisiti

Connettersi a un database SQL di Azure

Annotazioni

Le versioni di SSMS precedenti alla 18.6 non eseguono l'autenticazione ai motori di database tramite l'autenticazione a più fattori (MFA) di Microsoft Entra. Per continuare a usare MFA, è necessario SSMS 18.6 o una versione successiva.

  1. Avviare SQL Server Management Studio (SSMS). La prima volta che si esegue SSMS, viene visualizzata la finestra Connetti al server . Se non è aperto, è possibile aprirlo manualmente selezionando Esplora oggetti>Connetti>motore di database.

    Screenshot del collegamento Connetti in Esplora oggetti.

  2. Verrà visualizzata la finestra di dialogo Connetti al server . Immettere le informazioni seguenti:

    Impostazione Valore suggerito Dettagli
    Tipo di server Motore di database Selezionare Motore di database (in genere l'opzione predefinita).
    Nome server Nome di dominio completo del server Immettere il nome del nome del server logicodel database SQL di Azure.
    Autenticazione
    Microsoft Entra ID1
    -Parola d’ordine
    -Integrato
    -MFA
    È consigliabile usare l'autenticazione Microsoft Entra con l'autenticazione a più fattori (MFA). Vedere Uso dell'autenticazione a più fattori di Microsoft Entra.
    - Service Principal Consulta Entità servizio Microsoft Entra con Azure SQL.
    - Identità gestita Vedere Identità gestite in Microsoft Entra per SQL di Azure.

    La connessione con SSMS tramite un'identità gestita richiede una macchina virtuale di Azure. Vedere Usare un'identità gestita assegnata dal sistema per una macchina virtuale Windows per accedere ad Azure SQL
    - Impostazione predefinita L'opzione predefinita può essere usata per la connessione tramite qualsiasi modalità di autenticazione di Microsoft Entra senza password e non interattivo.
    Autenticazione di SQL Server Usare l'autenticazione di SQL Server per Azure SQL per connettersi.
    Accedi ID utente dell'account server ID utente dell'account server usato per creare il server.
    Parola d’ordine La password dell'account del server Password dell'account server usato per creare il server.
    Nome database Specificare il nome del database SQL di Azure.
    Crittografia2 Metodo di crittografia Selezionare il livello di crittografia per la connessione. Il valore predefinito è Obbligatorio.
    Considera attendibile il certificato del server TrustServerCertificate Selezionare questa opzione per ignorare la convalida del certificato del server. Il valore predefinito è False (deselezionato), che promuove una maggiore sicurezza usando certificati attendibili.
    Nome host nel certificato Nome host del server Il valore fornito in questa opzione viene usato per specificare un valore diverso, ma previsto, CN o SAN nel certificato del server.

    1 Il metodo di autenticazione di Windows non è supportato per Azure SQL. Per altre informazioni, vedere Autenticazione SQL di Azure. È consigliabile usare l'autenticazione Microsoft Entra con l'autenticazione a più fattori (MFA).

    2 Il valore predefinito è Obbligatorio in SQL Server Management Studio (SSMS) 20. La crittografia rigorosa (SQL Server 2022 e SQL di Azure) deve essere usata per il database SQL di Azure e per l'Istanza gestita di Azure SQL. La crittografia Strict (SQL Server 2022 e SQL di Azure) può essere usata per SQL Server quando l'istanza dispone di Force Strict Encryption abilitata. In SQL Server Management Studio 21 si chiama Strict (Minimum SQL Server 2022 and Azure SQL).

    È anche possibile modificare opzioni di connessione aggiuntive selezionando Opzioni. Esempi di opzioni di connessione sono il database a cui ci si connette, il valore di timeout della connessione e il protocollo di rete. Questo articolo usa i valori predefiniti per tutte le opzioni.

    Screenshot della finestra di dialogo di connessione per Azure SQL.

  3. Dopo aver completato tutti i campi, selezionare Connetti.

    Se il firewall non è configurato, viene visualizzato un prompt per configurare il firewall. Dopo aver eseguito l'accesso, immettere le informazioni di accesso all'account Azure e continuare a impostare la regola del firewall. Quindi, seleziona OK. Questa richiesta è un'azione da svolgere una sola volta. Dopo aver configurato il firewall, il prompt del firewall non dovrebbe essere visualizzato.

    Screenshot della finestra di dialogo

  4. Per verificare che la connessione al database SQL di Azure sia riuscita, espandere ed esplorare gli oggetti in Esplora oggetti in cui vengono visualizzati il nome del server, la versione di SQL Server e il nome utente. Questi oggetti sono diversi a seconda del tipo di server.

    Screenshot di una connessione al database SQL di Azure in Esplora oggetti.

Risolvere i problemi di connettività

  • Se il browser non riesce a connettersi al database SQL quando si usa Microsoft Entra con MFA, è possibile passare a Strumenti>Opzioni>Servizi> diAzure Cloud di Azure e modificare il valore per Usare il Web browser predefinito del sistema o Usare Gestione account Web. Per altre informazioni, vedere Opzioni (Servizi di Azure).

  • È possibile riscontrare problemi di connessione con il database SQL di Azure. Per altre informazioni sulla risoluzione dei problemi di connessione, vedere Risolvere i problemi di connettività e altri errori.

  • È possibile evitare, risolvere i problemi, diagnosticare e attenuare gli errori di connessione e temporanei riscontrati durante l'interazione con il database SQL di Azure. Per altre informazioni, vedere Risolvere gli errori di connessione temporanei.

Cancellare la cache dei token ID di Microsoft Entra

SQL Server Management Studio (SSMS) memorizza brevemente nella cache i token ID di Microsoft Entra. Quando un utente viene aggiunto a un gruppo microsoft Entra ID e tenta immediatamente di eseguire l'autenticazione da SSMS, viene generato il messaggio di errore seguente:

Login failed for user '<token-identified principal>'.
(Microsoft SQL Server, Error: 18456)

Se hai ottenuto di recente l'accesso a un server, puoi cancellare la cache dei token di Microsoft Entra ID da Guida>Cancella cache dei token Entra ID.

Screenshot del menu Guida con l'opzione Cancella cache del token Entra ID evidenziata in rosso.

Nella finestra di dialogo seguente viene descritto il motivo per cui questa opzione è utile se di recente è stato ricevuto l'accesso a un server e richiedere di nuovo l'autenticazione.

Screenshot della finestra di dialogo che richiede la conferma per cancellare la cache dei token utente di Microsoft Entra ID.

Creazione di un database

A questo punto si creerà un database denominato TutorialDB seguendo questa procedura:

  1. Fare clic con il pulsante destro del mouse sull'istanza del server in Esplora oggetti e quindi scegliere Nuova query:

    Screenshot che mostra il link Nuova query.

  2. Incollare il frammento di codice T-SQL seguente nella finestra di query creare un nuovo database con le impostazioni predefinite:

    IF NOT EXISTS (SELECT name
                   FROM sys.databases
                   WHERE name = N'TutorialDB')
        CREATE DATABASE [TutorialDB];
    GO
    
  3. Eseguire la query selezionando Esegui o selezionando F5 sulla tastiera.

    Al termine della query, il nuovo TutorialDB database viene visualizzato nell'elenco dei database in Esplora oggetti. Se non viene visualizzato, fare clic con il pulsante destro del mouse sul nodo Database e quindi scegliere Aggiorna.

Creare una tabella nel nuovo database

In questa sezione viene creata una tabella nel database appena creato TutorialDB . Poiché l'editor di query è ancora nel contesto del master database, impostare il contesto di connessione sul TutorialDB database seguendo questa procedura:

  1. Nell'elenco a discesa del database selezionare il database desiderato, come illustrato di seguito:

    Screenshot che mostra come modificare il contesto del database.

  2. Incollare il frammento di codice T-SQL seguente nella finestra di query:

    -- Create a new table called 'Customers' in schema 'dbo'
    -- Drop the table if it already exists
    IF OBJECT_ID('dbo.Customers', 'U') IS NOT NULL
        DROP TABLE dbo.Customers;
    GO
    
    -- Create the table in the specified schema
    CREATE TABLE dbo.Customers
    (
        CustomerId INT NOT NULL PRIMARY KEY, -- primary key column
        Name NVARCHAR (50) NOT NULL,
        Location NVARCHAR (50) NOT NULL,
        Email NVARCHAR (50) NOT NULL
    );
    GO
    
  3. Eseguire la query selezionando Esegui o selezionando F5 sulla tastiera.

Al termine della query, la nuova Customers tabella viene visualizzata nell'elenco delle tabelle in Esplora oggetti. Se la tabella non viene visualizzata, fare clic con il pulsante destro del mouse sul nodoTabelle> in Esplora oggetti e quindi scegliere Aggiorna.

Screenshot che mostra La nuova tabella.

Inserire righe nella nuova tabella

Inserire ora alcune righe nella Customers tabella creata. Incollare il frammento di codice T-SQL seguente nella finestra di query e quindi selezionare Esegui:

-- Insert rows into table 'Customers'
INSERT INTO dbo.Customers (
    [CustomerId],
    [Name],
    [Location],
    [Email]
)
VALUES
    (1, N'Orlando', N'Australia', N''),
    (2, N'Keith', N'India', N'keith0@adventure-works.com'),
    (3, N'Donna', N'Germany', N'donna0@adventure-works.com'),
    (4, N'Janet', N'United States', N'janet1@adventure-works.com');
GO

Eseguire query sulla tabella e visualizzare i risultati

I risultati di una query sono visibili sotto la finestra di testo della query. Per eseguire query sulla Customers tabella e visualizzare le righe inserite, incollare il frammento di codice T-SQL seguente nella finestra di query e quindi selezionare Esegui:

-- Select rows from table 'Customers'
SELECT * FROM dbo.Customers;

I risultati della query vengono visualizzati nell'area in cui è stato immesso il testo.

Screenshot dell'elenco dei risultati.

È anche possibile modificare il modo in cui vengono presentati i risultati selezionando una delle opzioni seguenti:

Screenshot di tre opzioni per la visualizzazione dei risultati delle query.

  • Il primo pulsante visualizza i risultati in Visualizzazione testo, come illustrato nell'immagine nella sezione successiva.
  • Il pulsante centrale visualizza i risultati in Visualizzazione griglia, ovvero l'opzione predefinita.
  • Il terzo pulsante consente di salvare i risultati in un file la cui estensione è .rpt per impostazione predefinita.

Verificare le proprietà di connessione usando la tabella della finestra di query

È possibile trovare informazioni sulle proprietà di connessione nei risultati della query. Dopo aver eseguito la query indicata in precedenza nel passaggio precedente, esaminare le proprietà di connessione nella parte inferiore della finestra di query.

  • È possibile determinare il server e il database a cui si è connessi e il nome utente.

  • È anche possibile visualizzare la durata della query e il numero di righe restituite dalla query eseguita in precedenza.

    Screenshot delle proprietà di connessione.

Pulire le risorse

Il TutorialDB database creato in questa guida introduttiva non è un database di offerta gratuita. Rimuoviamolo. Incollare il codice T-SQL seguente ed eseguire:

IF EXISTS (SELECT name
           FROM sys.databases
           WHERE name = N'TutorialDB')
    DROP DATABASE [TutorialDB];
GO