Cómo conectarse al motor de base de datos mediante sqlcmd.exe

SQL Server permite las comunicaciones de clientes con el protocolo de red TCP/IP (valor predeterminado), el protocolo Canalizaciones con nombre y el protocolo VIA. El protocolo de memoria compartida también está disponible si el cliente se está conectando a una instancia del Motor de base de datos en el mismo equipo. Hay varios métodos habituales para seleccionar el protocolo. El protocolo usado por la utilidad sqlcmd se determina en el siguiente orden:

En los siguientes ejemplos se muestran diversas formas de conectarse a la instancia predeterminada de Motor de base de datos en el puerto 1433, mientras que se supone que las instancias con nombre de Motor de base de datos están escuchando en el puerto 1691. Algunos de estos ejemplos utilizan la dirección IP del adaptador de bucle invertido (127.0.0.1). Pruebe el uso de la dirección IP de la tarjeta de interfaz de red del equipo.

Conéctese al Motor de base de datos especificando el nombre de la instancia:

sqlcmd -S ComputerA
sqlcmd -S ComputerA\instanceB

Conéctese a Motor de base de datos especificando la dirección IP:

sqlcmd -S 127.0.0.1
sqlcmd -S 127.0.0.1\instanceB

Conéctese a Motor de base de datos especificando el número de puerto 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 conectarse utilizando TCP/IP

  • Conéctese mediante la siguiente sintaxis:

    sqlcmd -S tcp:<computer name>,<port number>
    
  • Conéctese a la instancia predeterminada:

    sqlcmd -S tcp:ComputerA,1433
    sqlcmd -S tcp:127.0.0.1,1433
    
  • Conéctese a una instancia con nombre:

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

Para conectarse mediante canalizaciones con nombre

  • Conéctese utilizando una de las sintaxis generales siguientes:

    sqlcmd -S np:\\<computer name>\<pipe name>
    
  • Conéctese a la instancia predeterminada:

    sqlcmd -S np:\\ComputerA\pipe\sql\query
    sqlcmd -S np:\\127.0.0.1\pipe\sql\query
    
  • Conéctese a una instancia con nombre:

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

Para conectarse mediante la memoria compartida (una llamada a un procedimiento local) desde un cliente en el servidor

  • Conéctese utilizando una de las sintaxis generales siguientes:

    sqlcmd -S lpc:<computer name>
    
  • Conéctese a la instancia predeterminada:

    sqlcmd -S lpc:ComputerA
    
  • Conéctese a una instancia con nombre:

    sqlcmd -S lpc:ComputerA\<instancename>
    

Para conectarse mediante VIA

  • Conéctese utilizando una de las sintaxis generales siguientes:

    sqlcmd -S via:<computer name>,<port number>,<NIC number>
    
  • Conéctese a la instancia predeterminada:

    sqlcmd -S via:ComputerA,1433,0
    
  • Conéctese a una instancia con nombre:

    sqlcmd -S via:ComputerA,1691,0
    
Nota importanteImportante

El protocolo VIA está desusado. Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan.

Nota

Si no se proporciona información de conexión completa, el Explorador SQL Server proporcionará la información de conexión para el puerto predeterminado y la NIC, si se está ejecutando.

Nota

En este tema sólo se explican las opciones de conectividad de la utilidad sqlcmd. Hay muchos otros parámetros disponibles para la utilidad sqlcmd. Para obtener más información, vea sqlcmd (utilidad).