Tworzenie za pomocą prawidłowy ciąg połączenia potoki nazwane

Unless changed by the user, when the default instance of Microsoft SQL Server listens on the named pipes protocol, it uses \\. \pipe\sql\query as the pipe name.The period indicates that the computer is the local computer, pipe indicates that the connection is a named pipe, and sql\query is the name of the pipe.Aby połączyć potok domyślny, alias musi mieć \\<computer_name>\pipe\sql\query jako nazwa potoku.Jeśli SQL Server została skonfigurowana do nasłuchiwania różnych potoku, należy użyć nazwy potoku tego potoku.Dla wystąpienie, jeśli SQL Server używa \\. \pipe\unit\app as the pipe, the alias must use \\<computer_name>\pipe\unit\app as the pipe name.

Aby utworzyć nazwy potoku prawidłowe, należy:

  • Określ Nazwa aliasu.

  • Wybierz potoki nazwane jako protokołu.

  • Wprowadź Nazwa potoku.Alternatywnie można pozostawić Nazwa potoku puste i SQL Server Menedżer konfiguracji będzie pełna nazwa potoku właściwe, po określeniu protokołu i serwera

  • Określ Server.Nazwane wystąpienie może dostarczyć nazwa serwera i nazwy instancji.

At the time of connection, the SQL Server Native Client component reads the server, protocol, and pipe name values from the registry for the specified alias name, and creates a pipe name in the format np:\\<computer_name>\pipe\<pipename> or np:\\<IPAddress>\pipe\<pipename>. For a named instance, the default pipe name is \\<computer_name>\pipe\MSSQL$<instance_name>\sql\query.

Ostrzeżenie

Microsoft Dodatek Service Pack 2 dla systemu Windows XP umożliwia Zapora systemu Windows zamyka na porcie 445 przez domyślną.Because Microsoft SQL Server communicates over port 445, you must reopen the port if SQL Server is configured to listen for incoming client connections using named pipes.Informacje dotyczące konfigurowania zapory, zobacz "jak: Konfigurowanie zapory dla SQL Server dostępu " w SQL Server dokumentacji Books Online lub przejrzeć dokumentację zapory.

Łączenie z serwerem lokalnym

When connecting to SQL Server running on the same computer as the client, you can use (local) as the server name.Za pomocą (local) nie zaleca się, ponieważ prowadzi niejednoznaczności; Jednakże może być przydatne, gdy klient jest znany uruchomione na dany komputer.Dla wystąpienie, podczas tworzenia aplikacji dla przenośnych rozłączonych użytkowników, takich jak działu sprzedaży, gdzie SQL Server będą uruchamiane na komputerach typu laptop i projektu magazynu danych, zawsze połączyć klient nawiązującego połączenie (lokalny) SQL Server uruchomiony na komputerze przenośnym.Wyraz localhost lub kropki (.) mogą być używane zamiast (local).

Weryfikowanie Protokół połączenia

Następująca kwerenda będzie zwracać protokół używany dla bieżącego połączenia.

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

Przykłady

Łączenie przez nazwa serwera, aby potok domyślny:

Alias Name         <serveralias>
Pipe Name          <blank>
Protocol           Named Pipes
Server             <servername>

Nawiązywanie przez adres IP potok domyślny:

Alias Name         <serveralias>
Pipe Name          <leave blank>
Protocol           Named Pipes
Server             <IPAddress>

Łączenie przez nazwa serwera do potoku innych niż domyślne:

Alias Name         <serveralias>
Pipe Name          \\<servername>\pipe\unit\app
Protocol           Named Pipes
Server             <servername>

Łączenie przez nazwa serwera, aby wystąpienie nazwane:

Alias Name         <serveralias>
Pipe Name          \\<servername>\pipe\MSSQL$<instancename>\SQL\query
Protocol           Named Pipes
Server             <servername>

Podłączanie do komputera lokalnego za pomocą localhost:

Alias Name         <serveralias>
Pipe Name          <blank>
Protocol           Named Pipes
Server             localhost

Podłączanie do komputera lokalnego przy użyciu okres:

Alias Name         <serveralias>
Pipe Name          <left blank>
Protocol           Named Pipes
Server             .

Ostrzeżenie

Aby określić protokół sieciowy jako polecenie sqlcmd parametru, zobacz "jak: Połączyć aparat bazy danych przy użyciu sqlcmd.exe" w SQL Server dokumentacji Books Online.