Conectar-se ao Mecanismo de Banco de Dados com sqlcmd

O SQL Server oferece 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:

  • O sqlcmd 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 o sqlcmd para que use um protocolo de rede específico criando um alias, consulte Criar ou excluir um alias de servidor para ser usado por 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>