2012-04-05 12 views
8

Al haber actualizado recientemente a SSDT 2012, me parece que me falta la opción de generar un script T-SQL en lugar de implementar la base de datos en algún servidor.Hacer SSDT solo generar un script SQL (y no implementar una base de datos)

Para ser más precisos, el predecesor de SSDT solía establecer la acción Implementar en 'Generar script', pero no puedo encontrar esa opción en ninguna parte de la nueva versión.

¿Es posible?

Respuesta

11

Para generar una secuencia de comandos de un proyecto de datos fuera de línea en SSDT en lugar de desplegar a una base de datos de destino, configurar la configuración del proyecto, como se muestra a continuación

SSDT deployment configuration dialogue boxes

+0

Gracias Lynn, hice este cambio y si no crea la base de datos en los próximos días, cambiaré la respuesta aceptada – noonand

+0

@Lynn El enlace a la imagen está roto, ¿conoce el nombre de la configuración que necesito? para cambiar (y sus valores)? –

+0

@Lynn El enlace no está roto, el sitio en el que se encuentra la imagen fue bloqueado por el firewall de nuestra empresa :-(Disculpa por eso –

3

Sí, es posible.

Es selecciona Construir> publicar ProjectName ... desde la barra de menú, una ventana emergente de diálogo con opciones de edición - hay un botón Generar secuencia de comandos en la parte inferior de la ventana de diálogo.

+0

¿Y cuando hago esto, entonces lo hace para cada compilación subsiguiente hasta el momento en que lo cambio de nuevo? – noonand

+2

No, me temo que tendré que hacerlo cada vez. – gonsalu

6

Es posible que desee ver en la línea de comandos SQLPackage. Puede establecer las opciones allí para usar una acción de "script" y especificar un nombre de archivo de salida para generar scripts en lugar de publicar la base de datos. También puede hacerlo a través de un archivo por lotes, por lo que generará un script cada vez. Sin embargo, aún necesita proporcionar un proyecto de origen y una base de datos de destino. La referencia para SQLPackage se puede encontrar aquí: http://msdn.microsoft.com/en-us/library/hh550080%28v=VS.103%29.aspx

+0

Gran respuesta alternativa: CLI en lugar de GUI. – SandRock

0

También tuve un problema donde el proyecto SSDT intentaría implementar cambios cuando se ejecutó el proyecto.

En las propiedades del proyecto, elija la pestaña "Depurar". Cambia la acción de inicio a "Ninguno". Eso evitará que intente desplegar en ese momento.

Cuestiones relacionadas