Creazione di una stringa di connessione valida tramite TCP/IP

Per creare una stringa di connessione valida tramite TCP/IP, è necessario:

  • Specificare un Nome alias.

  • In Server immettere il nome di un server a cui sia possibile connettersi tramite l'utilità PING oppure un indirizzo IP a cui sia possibile connettersi con tale utilità. Per un'istanza denominata aggiungere il nome dell'istanza.

  • Specificare TCP/IP come Protocollo.

  • Facoltativamente, immettere un numero di porta in Numero porta. Il numero di porta predefinito è 1433, ossia il numero di porta dell'istanza predefinita di Motore di database in un server. Per connettersi a un'istanza denominata o a un'istanza predefinita non in attesa sulla porta 1433, è necessario fornire il numero di porta o avviare il servizio SQL Server Browser. Per informazioni sulla configurazione del servizio SQL Server Browser, vedere Servizio SQL Server Browser.

Al momento della connessione, il componente SQL Server Native Client leggerà i valori di server, protocollo e porta dal Registro di sistema per il nome alias specificato e creerà una stringa di connessione nel formato tcp:<servername>[\<instancename>],<port> o tcp:<IPAddress>[\<instancename>],<port>.

[!NOTA]

In Microsoft Windows XP Service Pack 2 è attivato Windows Firewall, che chiude la porta 1433 per impostazione predefinita. Poiché MicrosoftSQL Server comunica sulla porta 1433, è necessario aprire nuovamente tale porta se SQL Server è configurato per l'attesa di connessioni client in arrivo mediante TCP/IP. Per informazioni sulla configurazione di un firewall, vedere "Procedura: Configurazione di un firewall per l’accesso a SQL Server" nella documentazione in linea di SQL Server oppure vedere la documentazione relativa al firewall.

SQL Server e SQL Server Native Client supportano completamente sia IPv4 (protocollo IP versione 4) sia IPv6 (protocollo IP versione 6). Gestione configurazione SQL Server accetta sia il formato IPv4 sia il formato IPv6 per gli indirizzi IP. Per informazioni su IPv6, vedere "Connessione con IPv6" nella documentazione in linea di SQL Server.

Connessione al server locale

Quando si stabilisce una connessione a SQL Server in esecuzione nello stesso computer del client, è possibile utilizzare (local) come nome del server. Non si tratta di un'operazione consigliabile, in quanto genera ambiguità, ma può risultare utile se si è sicuri che il client viene eseguito nello stesso computer del server. Se, ad esempio, si crea un'applicazione per gli utenti mobili non connessi, ad esempio il personale di vendita, e SQL Server verrà eseguito su computer portatili e utilizzato per archiviare dati di progetto, un client che si connette a (local) si connetterà sempre all'istanza di SQL Server in esecuzione sul portatile. In sostituzione di (local) è possibile utilizzare la parola localhost o un punto (.).

Verifica del protocollo di connessione

La query seguente restituisce il protocollo utilizzato per la connessione corrente.

SELECT net_transport 
FROM sys.dm_exec_connections 
WHERE session_id = @@SPID;

Esempi

Connessione tramite il nome del server:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             <servername>

Connessione tramite il nome del server a un'istanza denominata:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             <servername>\<instancename>

Connessione tramite il nome del server a una porta specifica:

Alias Name         <serveralias>
Port No            <port>
Protocol           TCP/IP
Server             <servername>

Connessione tramite indirizzo IP:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             <IPAddress>

Connessione tramite indirizzo IP a un'istanza denominata:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             <IPAddress>\<instancename>

Connessione tramite indirizzo IP a una porta specificata:

Alias Name         <serveralias>
Port No            <port number>
Protocol           TCP/IP
Server             <IPAddress>

Connessione al computer locale tramite (local):

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             (local)

Connessione al computer locale tramite localhost:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             localhost

Connessione a un'istanza denominata nel computer locale tramite localhost:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             localhost\<instancename>

Connessione al computer locale tramite un punto:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             .

Connessione a un'istanza denominata nel computer locale tramite un punto:

Alias Name         <serveralias>
Port No            <blank>
Protocol           TCP/IP
Server             .\<instancename>

[!NOTA]

Per informazioni su come specificare il protocollo di rete come parametro sqlcmd, vedere "Procedura: Connessione al Motore di database tramite sqlcmd.exe" nella documentazione in linea di SQL Server.