Connessione al Motore di database tramite sqlcmd
SQL Server supporta le comunicazioni client con il protocollo di rete TCP/IP (predefinito) e il protocollo Named Pipes. Se il client si connette a un'istanza del Motore di database nello stesso computer, è inoltre disponibile il protocollo Shared Memory. La selezione del protocollo può essere in genere eseguita in tre modi. Per stabilire quale protocollo viene utilizzato dall'utilità sqlcmd è possibile verificare quanto segue:
sqlcmd utilizza il protocollo specificato nella stringa di connessione, come è illustrato di seguito.
Se nella stringa di connessione non viene specificato alcun protocollo, sqlcmd utilizzerà il protocollo definito nell'alias con il quale viene stabilita la connessione. Per configurare sqlcmd per l'utilizzo di un protocollo di rete specifico tramite la creazione di un alias, vedere Creazione o eliminazione di un alias server per l'utilizzo da parte di un client (Gestione configurazione SQL Server).
Se il protocollo non viene specificato in un altro modo, sqlcmd utilizzerà il protocollo di rete determinato dall'ordine dei protocolli in Gestione configurazione SQL Server.
Negli esempi seguenti vengono illustrate diverse modalità di connessione all'istanza predefinita di Motore di database sulla porta 1433 e a istanze denominate di Motore di database in attesa sulla porta 1691. In alcuni degli esempi viene utilizzato l'indirizzo IP dell'adattatore loopback (127.0.0.1). Eseguire una prova utilizzando l'indirizzo IP della scheda di interfaccia di rete del computer in uso.
Connettersi al Motore di database specificando il nome dell'istanza:
sqlcmd -S ComputerA
sqlcmd -S ComputerA\instanceB
Connettersi al Motore di database specificando l'indirizzo IP:
sqlcmd -S 127.0.0.1
sqlcmd -S 127.0.0.1\instanceB
Connettersi al Motore di database specificando il numero della porta TCP\IP:
sqlcmd -S ComputerA,1433
sqlcmd -S ComputerA,1691
sqlcmd -S 127.0.0.1,1433
sqlcmd -S 127.0.0.1,1691
Per connettersi utilizzando il protocollo TCP/IP
Connettersi utilizzando la sintassi generale seguente:
sqlcmd -S tcp:<computer name>,<port number>
Connettersi all'istanza predefinita:
sqlcmd -S tcp:ComputerA,1433 sqlcmd -S tcp:127.0.0.1,1433
Connettersi a un'istanza denominata:
sqlcmd -S tcp:ComputerA,1691 sqlcmd -S tcp:127.0.0.1,1691
Per connettersi utilizzando il protocollo Named Pipes
Stabilire la connessione utilizzando la sintassi generale seguente:
sqlcmd -S np:\\<computer name>\<pipe name>
Connettersi all'istanza predefinita:
sqlcmd -S np:\\ComputerA\pipe\sql\query sqlcmd -S np:\\127.0.0.1\pipe\sql\query
Connettersi a un'istanza denominata:
sqlcmd -S np:\\ComputerA\pipe\MSSQL$<instancename>\sql\query sqlcmd -S np:\\127.0.0.1\pipe\MSSQL$<instancename>\sql\query
Per connettersi utilizzando il protocollo Shared Memory (chiamata a una procedura locale) da un client nel server
Stabilire la connessione utilizzando la sintassi generale seguente:
sqlcmd -S lpc:<computer name>
Connettersi all'istanza predefinita:
sqlcmd -S lpc:ComputerA
Connettersi a un'istanza denominata:
sqlcmd -S lpc:ComputerA\<instancename>