Questa pagina è stata utile?
I suggerimenti relativi al contenuto di questa pagina sono importanti. Comunicaceli.
Altri suggerimenti?
1500 caratteri rimanenti
Esporta (0) Stampa
Espandi tutto

Procedura: Connettersi al database SQL di Azure tramite sqlcmd

Aggiornamento: luglio 2015

Questo argomento illustra le differenze tra la connessione mediante l'utilità sqlcmd.exe a Database SQL di Microsoft Azure e la connessione a Microsoft SQL Server locale tradizionale. Viene illustrato anche SQL Server Management Studio (SSMS).

La tabella seguente illustra le stringhe di connessione per usi specifici. Per migliorare la visualizzazione, ogni stringa è stata suddivisa su più righe.

 

Prodotto database Stringa di connessione Commenti

A.
Microsoft SQL Server, locale

sqlcmd.exe -P MyPassword
    -U MyLogin
    -S myserver

Viene usato per impostazione predefinita il database master.

B.
Database SQL di Azure, formato completo

sqlcmd.exe -P MyPassword
    -U MyLogin@myserver
    -S tcp:myserver.database.windows.net,1433
    -d AdventureWorks
    -l 30

Formato consigliato.

C.
Database SQL di Azure, possibile formato più breve

sqlcmd.exe -P MyPassword
    -U MyLogin
    -S myserver.database.windows.net
    -d AdventureWorks
    -l 30

Il formato più breve non è consigliato. Il formato breve è adatto per alcune situazioni, ma non per tutte.

È possibile abbreviare ancora questo formato eliminando i parametri -d e -l, ma ciò non è consigliato.

Per i parametri che risultano diversi tra la connessione a SQL Server rispetto alla connessione a Database SQL di Azure, la tabella seguente illustra le differenze applicabili a Database SQL di Azure.

 

Parametro Valore di esempio Descrizione per Database SQL di Azure

-U

Nome utente.

-U MyLogin@myserver

È possibile che il valore non valido seguente funzioni, ma non è valido perché ogni nodo delimitato da punto dopo @myserver verrà ignorato:
-U MyLogin@myserver.database.windows.net

È possibile che funzioni anche il valore "silly" seguente:
-U MyLogin@myserver.silly

Il valore errato seguente per la parte relativa al nome del server provocherebbe un errore:
-U MyLogin@wrongsvr

L'inclusione di @ e il nome del server a nodo singolo permettono di confermare che ci si sta connettendo al server desiderato. Questa inclusione, tuttavia, non è sempre strettamente necessaria.

-S

Nome server ed estensione.

-S tcp:myserver.database.windows.net,1433

Il valore letterale delimitato da punto .database.windows.net è sempre obbligatorio.

La parte tcp: iniziale identifica il protocollo di comunicazione necessario. A volte è facoltativo, ma consigliato.

Il valore finale ,1433 corrisponde al numero di porta di comunicazione usata dal Database SQL di Azure. A volte è facoltativo, ma consigliato.

-d

Nome database.

-d AdventureWorks

Raramente si vuole effettuare la connessione al database master su Database SQL di Azure. master, tuttavia, è il database predefinito.

Database SQL di Azure non supporta il comando USE di Transact-SQL. Non è possibile annullare la selezione del database master o di qualsiasi database.

È quindi in genere necessario effettuare la connessione usando il parametro -d.

-l

Timout di accesso.

-l 30

Microsoft consiglia di concedere più tempo a un tentativo di connessione tramite Web. Il valore di timeout di accesso predefinito è pari a 15 secondi, ma sul Web è a volte utile specificare un timeout di 30 secondi.

Di seguito sono visualizzati i contenuti della console cmd.exe da un'esecuzione di sqlcmd.exe nel Database SQL di Azure.

[C:\\]
>> sqlcmd.exe -U MyLogin@myserver -S tcp:myserver.database.windows.net,1433 -d AdventureWorks -P MyPassword -l 30
1> SET nocount on;  SELECT getdate();
2> SELECT top 3 o.name from sys.objects as o where o.type='U' order by 1;
3> go

-----------------------
2015-05-12 23:17:32.740
name

---------------------------------------------------------------------------------------------------------------------------

Address

BuildVersion

Customer

1> quit

[C:\\]
>>

Il suggerimento relativo alla stringa di connessione applicabile a sqlcmd.exe è applicabile anche a SSMS, ovvero ssms.exe.

Nel caso di SSMS, è consigliabile immettere i valori seguenti nella finestra di dialogo Connetti al server:

  • Impostare il controllo etichettato come Autenticazione sul valore Autenticazione di SQL Server.

    • Database SQL di Azure non supporta l'Autenticazione di Windows.

  • Fare clic su Opzioni > Proprietà connessione. Immettere le impostazioni seguenti:

    • Connetti al database:    MyDatabaseName

    • Timeout connessione:    30

  • Per usare il portale di anteprima di Azure per verificare le informazioni sulla stringa di connessione per il database, vedere Connettersi ed eseguire query nel database SQL con C#.

  • Per visualizzare descrizioni dei numerosi parametri per sqlcmd.exe, vedere Utilità sqlcmd.

  • Per visualizzare informazioni generali su sqlcmd.exe, fare clic su questa ricerca Web automatica dell'argomento intitolato "Procedure correlate a sqlcmd".

  • Per visualizzare informazioni generali su ssms.exe, fare clic su questa ricerca Web automatica dell'argomento intitolato "Utilità Ssms".

Mostra:
© 2015 Microsoft