Conectar-se ao Mecanismo de Banco de Dados com sqlcmd

SQL Server dá suporte à comunicação de cliente com o protocolo de rede TCP/IP (padrão) e o protocolo de pipes nomeados. O protocolo de memória compartilhada também estará disponível se o cliente estiver se conectando a uma instância do Mecanismo de Banco de Dados no mesmo computador. Há três métodos comuns de selecionar o protocolo. O protocolo usado pelo utilitário sqlcmd é determinado na seguinte ordem:

  • Osqlcmd usa o protocolo especificado como parte da cadeia de conexão, conforme a descrição abaixo.

  • Se nenhum protocolo for especificado como parte da cadeia de conexão, o sqlcmd usará o protocolo definido como parte do alias ao qual ele está se conectando. Para configurar sqlcmd para usar um protocolo de rede específico criando um alias, confira Criar ou excluir um alias do servidor para uso de um cliente (SQL Server Configuration Manager).

  • Se o protocolo não for especificado de outra forma, o sqlcmd usará o protocolo de rede determinado pela ordem de protocolos no SQL Server Configuration Manager.

Os exemplos a seguir mostram várias formas de fazer a conexão com a instância padrão do Mecanismo de Banco de Dados na porta 1433, presumindo-se que as instâncias nomeadas do Mecanismo de Banco de Dados estejam escutando na porta 1691. Alguns dos exemplos usam o endereço IP do adaptador de loopback (127.0.0.1). Experimente usar o endereço IP da placa de interface de rede de seu computador.

Conecte-se ao Mecanismo de Banco de Dados especificando o nome da instância:

sqlcmd -S ComputerA  
sqlcmd -S ComputerA\instanceB  

Conecte-se ao Mecanismo de Banco de Dados especificando o endereço IP:

sqlcmd -S 127.0.0.1  
sqlcmd -S 127.0.0.1\instanceB  

Conecte-se ao Mecanismo de Banco de Dados especificando o número da porta de TCP\IP:

sqlcmd -S ComputerA,1433  
sqlcmd -S ComputerA,1691  
sqlcmd -S 127.0.0.1,1433  
sqlcmd -S 127.0.0.1,1691  

Para fazer a conexão usando TCP/IP

  • Conecte-se usando a seguinte sintaxe geral:

    sqlcmd -S tcp:<computer name>,<port number>  
    
  • Conecte-se à instância padrão:

    sqlcmd -S tcp:ComputerA,1433  
    sqlcmd -S tcp:127.0.0.1,1433  
    
  • Conecte-se a uma instância nomeada:

    sqlcmd -S tcp:ComputerA,1691  
    sqlcmd -S tcp:127.0.0.1,1691  
    

Para fazer a conexão usando pipes nomeados

  • Conecte-se usando uma das seguintes sintaxes gerais:

    sqlcmd -S np:\\<computer name>\<pipe name>  
    
  • Conecte-se à instância padrão:

    sqlcmd -S np:\\ComputerA\pipe\sql\query  
    sqlcmd -S np:\\127.0.0.1\pipe\sql\query  
    
  • Conecte-se a uma instância nomeada:

    sqlcmd -S np:\\ComputerA\pipe\MSSQL$<instancename>\sql\query  
    sqlcmd -S np:\\127.0.0.1\pipe\MSSQL$<instancename>\sql\query  
    

Para fazer a conexão usando memória compartilhada (uma chamada de procedimento local) a partir de um cliente no servidor

  • Conecte-se usando uma das seguintes sintaxes gerais:

    sqlcmd -S lpc:<computer name>  
    
  • Conecte-se à instância padrão:

    sqlcmd -S lpc:ComputerA  
    
  • Conecte-se a uma instância nomeada:

    sqlcmd -S lpc:ComputerA\<instancename>