¿Uso de la línea de comandos de SQL Server? ¿Es posible?


11

He estado tratando de usar el "Explorador de soluciones" integrado de SQL Server Management Studio 2008 para administrar un proyecto y después de 2 semanas de dificultades, he decidido que realmente no me importa. Sus características de "conveniencia" son realmente un obstáculo.

Desafortunadamente, el lugar donde trabajo es una tienda de MS y está bastante atascado en sus formas. Quiero volver a la línea de comando (¡anhelo Vim!). He instalado un repositorio de subversión local con un front-end TortiseSVN, para reemplazar el "Explorador de soluciones" mencionado anteriormente y hacer que funcione bastante bien. También he instalado Vim y, mientras sigo trabajando en la personalización, lo hago tararear.

Sin embargo, lo único que todavía tengo que encontrar una solución es cómo ejecutar comandos a SQL Server a través de la línea de comandos. Estoy acostumbrado a la línea de comandos de MySQL / Postgres ya que eso es lo que he usado en el pasado y estaba usando mientras estudiaba en mis clases. Sin embargo, parece que no puedo encontrar una manera de ejecutar mis scripts a través de la línea de comandos en Windows. Actualmente los edito en Vim, actualizo la página en SSMS y ejecuto. Preferiría ni siquiera tocar SMSS a menos que sea necesario.

He visto publicaciones que sugieren sqlsharp, pero cuando fui a la página, tengo la sensación de que no es exactamente lo que estoy buscando.

--editar

Realmente deseo que sea posible tener 2 marcas de verificación de respuesta. P. Campbell tiene la respuesta técnica correcta, y la he intentado varias veces (sigo obteniendo un error cuando intento sqlcmd ... Al investigar que así es como funcionan las tuberías con nombre ... Aunque lo tengo configurado y habilitado, no parece funcionar).

Después de intentarlo y no tener éxito, probé simplemente copiar y pegar en el método de Management Studio, pero eso fue ridículo ... Así que decidí que quizás HardCode también sea correcto.

Respuestas:


15

¿Has considerado SQLCMD?

Aquí hay un artículo sobre el uso de la utilidad de línea de comandos SQLCMD .

Puede ejecutar sentencias SQL adhoc o ejecutar scripts .sql.

El siguiente ejemplo ejecuta el script C: \ MyScript.sql desde la línea de comando y genera las consultas y los resultados en un archivo de texto ubicado en C: \ MyResults.txt.

C:\Windows>sqlcmd -S NOTTINTRA3\SQL2005 -i C:\MyScript.sql -o c:\MyResults.txt -e

ingrese la descripción de la imagen aquí


7

No hay nada de malo en abrir Management Studio, hacer clic en 'Nueva consulta' y simplemente escribir comandos T-SQL. Puede que lo esté haciendo más complicado de lo necesario.


@ HardCode Tenía la sensación de que ese era el caso. He usado Linux por tanto tiempo que me estoy volviendo loco aquí. No me importa la EM y todo (de hecho, me he movido más a medio camino desde que me gradué) pero encuentro algunas de sus herramientas, bueno, incompletas. El explorador de soluciones no es una gran opción en mi libro, pero sí, todo lo demás (vim y línea de comando) son bastante opcionales, lo que me dificulta los elementos. Pero, al final, es más una curiosidad que cualquier otra cosa. ¡Gracias!


2

SQL Server se entrega con una serie de utilidades de línea de comandos. SQLCMDes el que le permite ejecutar comandos T-SQL directamente contra una base de datos. La página de MSDN en las utilidades está aquí , con enlaces de salto a cada uno.

Con respecto a su posdata, aún necesitaría un cliente de base de datos de línea de comandos de algún tipo, basado en Linux, en este caso. No tengo idea si existe tal cosa. Sin embargo, configurar una plataforma completamente diferente solo para administrar una base de datos con un paradigma de UI diferente (suponiendo que eso es lo que estás sugiriendo) parece excesivo. :)


2

El explorador de soluciones apesta, simple y llanamente. Y considero que los chicos que se equivocaron con la mayoría de esa basura son buenos amigos. Simplemente cree una carpeta (tiene una bonita que usa por defecto) y simplemente guarde sus cosas allí.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.