2009-01-09 14 views
11

Activamos "Herramientas ==> Opciones ==> Diseñadores ==> Diseñadores de tablas y bases de datos ==> Generar automáticamente scripts de cambios" en nuestro SQL Server Management Studio (SSMS). Al cambiar nuestro esquema de base de datos, guardamos el script y, gracias a las herramientas de migración de DB que tenemos instaladas en todas las máquinas que ejecutan nuestras aplicaciones, podemos sincronizar el esquema durante la próxima actualización de la versión de software.SQL Server 2008 Auto Generar scripts de cambio Legado Problema

Recientemente cambiamos nuestras copias de desarrollo y algunos servidores de producción a SQL Server 2008. Sin embargo, todavía tenemos unas pocas docenas de SQL Server 2005 ejecutando nuestro software en la naturaleza. No estamos planeando actualizar estos por un tiempo.

El problema es simple. Los scripts generados por SSMS simplemente no siempre funcionan con SQL Server 2005. SMSS está agregando metadatos adicionales a los comandos (en relación con la escalada de bloqueo, por ejemplo). Para hacer nuestros scripts con 2005, tenemos que eliminar manualmente la información adicional; de lo contrario, los scripts no se ejecutarán.

¿Hay alguna forma de configurar el SSMS para generar scripts que sean compatibles con SQL Server 2005? ¿Hay herramientas que podrían eliminar el SQL adicional de forma automática o, al menos, dejarnos saber qué archivos son problemáticos?

+0

¿Qué error específico estás viendo? –

Respuesta

13

En Server Management Studio 2008 Herramientas Goto SQL -> Opciones -> Explorador de objetos de SQL Server -> Scripting y Seleccionar "guión para la versión del servidor" y cambiarlo a SQL Server 2005.

+0

No puedo creer que no haya notado esto. Gracias. –

+0

Por lo que puedo ver, incluso con la opción de configuración, la secuencia de comandos que está generando es incompatible :(. Voy a echarle la culpa a un error en SSMS (¡no el primero que veo relacionado con las opciones de configuración!). –

+1

Si esto es un error de SMSS, todavía persiste en SQL 2008 R2 lanzado recientemente. (Estoy teniendo el mismo problema y lo tuve con SQL2005-> 2000) –

0

Todavía no he usado el estudio de administración 2008, pero en todas las versiones anteriores ha podido establecer las secuencias de comandos en una versión específica de SQL Server en alguna parte.

Tengo el 2005 conjunto de estudio de administración para generar 2000 scripts compatibles por razones similares.

2

La solución recomendada para cambiar la parece que las opciones son corerct sin embargo, todavía genera ALTER TABLE SET (LOCK_ESCALATION = TABLE) en mi base de datos (incluso puse en modo compatibilidad 90)

+0

Esto también lo hace para mí, eliminándolo manualmente. –

Cuestiones relacionadas