Published on

October 10, 2017

Trabajando con sqlcmd en SQL Server

Sqlcmd es una herramienta de línea de comandos que te permite ejecutar consultas, sentencias T-SQL y scripts de SQL Server directamente desde la línea de comandos. Proporciona una forma conveniente de interactuar con SQL Server y automatizar diversas tareas. En este artículo, exploraremos diferentes formas de usar sqlcmd en un entorno local de SQL Server.

Trabajando con el modo interactivo de sqlcmd

En el modo interactivo, puedes ingresar comandos e interactuar con SQL Server directamente desde la línea de comandos. Para conectarte a tu instancia local de SQL Server, utiliza el siguiente comando:

sqlcmd -S [NombreDelServidor] -E

Reemplaza [NombreDelServidor] con el nombre de tu instancia de SQL Server. La opción -E especifica una conexión confiable utilizando la autenticación de Windows. Si necesitas especificar un nombre de usuario y una contraseña, puedes utilizar las opciones -U y -P respectivamente.

Una vez conectado, puedes ejecutar consultas y realizar diversas tareas. Por ejemplo, puedes verificar la base de datos actual utilizando el siguiente comando:

SELECT DB_NAME()

Para listar todas las bases de datos en la instancia de SQL Server, puedes utilizar el siguiente comando:

SELECT name FROM sys.databases

También puedes verificar si SQL Server es sensible a mayúsculas y minúsculas utilizando el siguiente comando:

SELECT SERVERPROPERTY('COLLATION')

Estos son solo algunos ejemplos de lo que puedes hacer en el modo interactivo. Puedes explorar más comandos y funcionalidades consultando la documentación de SQL Server.

Ejecutando sqlcmd en el modo de comando

En el modo de comando, puedes ejecutar sqlcmd como un comando y ejecutar scripts o realizar tareas específicas. Por ejemplo, puedes hacer una copia de seguridad de una base de datos utilizando el siguiente comando:

sqlcmd -S [NombreDelServidor] -E -i [ArchivoDeScript] -o [ArchivoDeSalida]

Reemplaza [NombreDelServidor] con el nombre de tu instancia de SQL Server, [ArchivoDeScript] con la ruta a tu archivo de script y [ArchivoDeSalida] con la ruta al archivo donde deseas guardar la salida.

También puedes trabajar con variables en sqlcmd. Por ejemplo, puedes establecer una variable y usarla en tus consultas:

:SETVAR NombreDeLaBaseDeDatos "AdventureWorks"
USE $(NombreDeLaBaseDeDatos)

Esto establece la variable “NombreDeLaBaseDeDatos” en “AdventureWorks” y cambia el contexto a la base de datos especificada.

Estos son solo algunos ejemplos de lo que puedes hacer en el modo de comando. Puedes ejecutar scripts T-SQL, trabajar con variables y realizar diversas tareas utilizando sqlcmd.

Trabajando en SSMS en modo sqlcmd

Si prefieres trabajar en SQL Server Management Studio (SSMS), también puedes utilizar el modo sqlcmd. Esto te permite ejecutar comandos sqlcmd directamente en SSMS. Para habilitar el modo sqlcmd en SSMS, ve a Consulta > Modo SQLCMD.

En el modo sqlcmd, puedes ejecutar comandos y scripts sqlcmd directamente en SSMS. Por ejemplo, puedes crear una base de datos utilizando el siguiente comando:

:SETVAR NombreDeLaBaseDeDatos "Ventas"
CREATE DATABASE $(NombreDeLaBaseDeDatos)

Esto crea una base de datos llamada “Ventas” en SSMS.

Utilizar el modo sqlcmd en SSMS puede ser útil para depurar y programar scripts grandes que luego se pueden utilizar en el modo de comando.

Trabajando con PowerShell

Si prefieres utilizar PowerShell, también puedes invocar sqlcmd utilizando PowerShell. Esto te permite integrar invocaciones de sqlcmd en tus scripts de PowerShell. Para invocar sqlcmd utilizando PowerShell, puedes utilizar el siguiente comando:

Invoke-Sqlcmd -ServerInstance [NombreDelServidor] -Database [NombreDeLaBaseDeDatos] -Query [Consulta]

Reemplaza [NombreDelServidor] con el nombre de tu instancia de SQL Server, [NombreDeLaBaseDeDatos] con el nombre de la base de datos a la que deseas conectarte y [Consulta] con la consulta SQL que deseas ejecutar.

PowerShell proporciona un entorno de scripting potente y utilizar sqlcmd con PowerShell te permite automatizar diversas tareas y realizar operaciones complejas.

Conclusión

Sqlcmd es una herramienta versátil que te permite interactuar con SQL Server desde la línea de comandos. Ya sea que prefieras el modo interactivo, el modo de comando, SSMS en modo sqlcmd o PowerShell, sqlcmd proporciona una forma conveniente de ejecutar consultas, ejecutar scripts y automatizar tareas en SQL Server. Al familiarizarte con sqlcmd, puedes mejorar tu productividad y eficiencia al trabajar con SQL Server.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.