Me gustaría sincronizar mi esquema de base de datos con mi proyecto de base de datos Visual Studio .dbproj.
En este momento, estoy usando SSMS para la mayor parte del trabajo de desarrollo de mi base de datos, y tengo que usar manualmente la herramienta de comparación de esquemas de Visual Studio cuando necesito sincronizar el esquema db y el .dbproj. ¿Por qué querría esto? porque :
- Es la única forma de registrar cambios
- Es la única forma de aplicar cambios.
- Si no lo hace, se producirán algunos problemas de fusión al obtener archivos (básicamente, si un "get latest" contiene algunos cambios db en los objetos db que he estado actualizando sin verificarlos, no se activará una fusión, y es fácil realizar un seguimiento de qué versión es cuál)
- Es bueno poder usar las funciones de búsqueda de VisualStudio en una versión actualizada del esquema
- Es bueno poder modificar los procedimientos almacenados de VS (generalmente cuando ha cambiado el nombre de un archivo) utilizando los resultados de búsqueda.
Además de automatizar la herramienta de "comparación de esquemas" para que se ejecute cada 5 minutos (que difícilmente parece una solución "limpia"), ¿hay maneras de lograr esto?
Me gustaría seguir usando SSMS si es posible, pero también me interesan las formas de propagar automáticamente los cambios realizados mediante el "Explorador de servidores / Conexiones de base de datos" de Visual Studio al .dbproj.
Respuestas:
SQL Server Management Studio es principalmente una herramienta de ADMINISTRACIÓN de SQL Server y, como tal, no está necesariamente diseñada para admitir los escenarios que está buscando.
Visual Studio Team System 2008 Database Edition y Visual Studio Team System 2010 Pro / Ultimate incluyen las herramientas de desarrollador de base de datos (VSDB) para ayudar a aquellos con grandes recursos de bases de datos a integrar su esquema / vista / proc / etc. desarrollo con su desarrollo de aplicaciones.
VSDB le permite realizar ingeniería inversa de los esquemas de bases de datos existentes en proyectos de Visual Studio para que pueda controlar los archivos de script de elementos de esquema de origen. También puede modificar / crear scripts de esquema de SQL Server para la creación de prácticamente todos los elementos de esquema compatibles con SQL 2005/2008/2010.
VSDB también admite la capacidad de implementar actualizaciones de esquemas de bases de datos completas / parciales en bases de datos vacías / existentes donde realiza una ENORME cantidad de trabajo para tratar de aplicar solo los cambios necesarios para modificar la base de datos existente (si está presente) para que refleje la estructura de el proyecto de base de datos VSDB de origen.
VSDB también incluye una serie de herramientas para ayudarlo a comparar esquemas entre proyectos de bases de datos y / o proyectos de bases de datos y también le permite diferenciar y fusionar el contenido de la tabla.
Sin embargo, tenga en cuenta que si bien este conjunto de herramientas es compatible hoy, el equipo se ha desmantelado y el producto está en modo de mantenimiento. El grupo de productos SQL Server ahora tiene la responsabilidad de crear herramientas para desarrolladores y están trabajando arduamente para hacer eso :)
fuente
Hay dos maneras que conozco con las características finales de VS2010 para hacer esto.
fuente