2010-08-12 8 views
5

Tengo un nuevo proyecto de base de datos de Visual Studio 2008 (Data Dude). Fue generado apuntando a nuestra base de datos existente. He realizado algunos cambios (nuevas columnas, tablas, índices, etc.) y estoy intentando generar el script de implementación (diff) para la implementación. Tengo una configuración de Comparación de esquemas para hacer la comparación y generar el archivo de script diff. Creo que modifiqué la mayoría de las configuraciones de comparación y el objeto ignora lo que necesito, sin embargo, en la parte superior recibo algunos comandos ALTER DATABASE que preferiría no haber generado. Son similares a esto:Base de datos de Visual Studio 2008 Proyecto que genera ALTER DATABASE durante la comparación de esquema

IF EXISTS (SELECT 1 
      FROM [master].[dbo].[sysdatabases] 
      WHERE [name] = N'$(DatabaseName)') 
    BEGIN 
     ALTER DATABASE [$(DatabaseName)] 
      SET ANSI_NULLS ON, 
       ANSI_PADDING ON, 
       ANSI_WARNINGS ON, 
       ARITHABORT ON, 
       CONCAT_NULL_YIELDS_NULL ON, 
       QUOTED_IDENTIFIER ON, 
       ANSI_NULL_DEFAULT ON, 
       CURSOR_DEFAULT LOCAL 
      WITH ROLLBACK IMMEDIATE; 
    END 


GO 
IF EXISTS (SELECT 1 
      FROM [master].[dbo].[sysdatabases] 
      WHERE [name] = N'$(DatabaseName)') 
    BEGIN 
     ALTER DATABASE [$(DatabaseName)] 
      SET PAGE_VERIFY NONE 
      WITH ROLLBACK IMMEDIATE; 
    END 


GO 

preferiría que ajustar la configuración de modo que yo no tengo que comunicar a mi 15+ miembro del equipo que necesitan para eliminar esas líneas del archivo de diferenciación cada vez que quieren para desplegar e implementar lo último en su entorno.

¿Qué ajustes están controlando esto?

Respuesta

1

Existen configuraciones para controlar esto en los archivos .sqldeployment y .sqlsettings de su proyecto (disponibles en la carpeta Propiedades de su proyecto en el Explorador de soluciones). La configuración en sí misma puede modificarse en el archivo .sqlsettings [DB Settings Screenshot] y la capacidad de deshabilitar toda la generación de scripts de propiedades de la base de datos se puede encontrar en la primera casilla cuando se ve la configuración de .sqldeployment. [SQL Deployment Settings Screenshot]

+1

Solo agregue más detalles a la respuesta. Cuando generamos el proyecto SQL a partir de nuestro db existente, debemos haber perdido la opción de generar el SQLSettings desde la base de datos y, en cambio, elegimos usar la configuración "predeterminada" para un proyecto db (tipo de datos). Por lo tanto, mi db actual no tiene estas opciones establecidas, por lo que quiere configurarlas en mi generación de "script de diferencia" porque están especificadas en el archivo "predeterminado" de sqlsettings, pero no en mi db. Todavía me gustaría deshabilitarlos de la generación, pero es más que una advertencia para asegurarse de que genera su proyecto de db limpiamente la primera vez – Brian

4

Hay dos casillas de verificación que deben desmarcarse antes de guardar el perfil de publicación. Asegúrate de ir a las propiedades del proyecto -> Depuración y desmarca "Implementar propiedades de base de datos"

Click here to view screenshot

continuación, haga clic derecho en su proyecto de base de datos -> publicar a continuación, haga clic en "Opciones avanzadas" para desactivar "Implementar propiedades de base de datos"

Click here to view screenshot

en Aceptar, en Guardar perfil como, y de ahora en adelante, cada vez que se despliegue la secuencia de comandos generada utilizando el perfil de publicación que acaba de crear, solamente contendrá las modificaciones que desee.

Estoy usando VS 2013 con la última SSDT a partir del 20-abr-2016.

Cuestiones relacionadas