2010-08-12 24 views
7

Estamos utilizando la plantilla de proyecto de base de datos de SQL Server con VS 2010. Como parte de nuestras pruebas de integración, me gustaría lanzar una nueva implementación de la base de datos. Pero a menos de hacer clic derecho en el proyecto y seleccionar "Implementar", no parece ser una tarea sencilla obtener una copia nueva de la base de datos implementada.¿Existe una línea de comando para implementar un proyecto de Base de datos de servidor Sql?

La documentación para este tipo de proyecto parece escasa o inexistente. . Tal vez "estoy buscando en el lugar equivocado Si es posible, por favor incluya una referencia a la forma-a

Actualización:. Nuestras pruebas de integración se escriben como pruebas de unidad en Visual Studio Así que el objetivo sería que pulsar el. Ejecute el botón Pruebas y haga que se despliegue la base de datos, y luego se ejecuten las pruebas en su contra.

Respuesta

5

Logré encontrar una herramienta de línea de comandos para hacer esto. ed VSDBCMD.EXE y viene con Visual Studio 2010. Lo aprendí por primera vez here (scroll to the bottom of the article), luego seguí un link and found the details of how to get it installed on my server.

En el segundo artículo, si está en una máquina de 64 bits, no encontrará el directorio de VSTSDB en Archivos de programa ... tendrá que buscar en Archivos de programa (x86).

Seguí las instrucciones a la carta (instalé tanto la versión de 32 bits como la de 64 bits de SQL CE) y está funcionando muy bien. Básicamente tomo el resultado de una compilación de mi proyecto de base de datos de SQL Server 2008, lo comprime y lo coloca en el servidor, luego ejecuto el script de implementación.

La primera vez que hice esto, la base de datos de destino no existía. La herramienta creó la base de datos y la configuró muy bien. Luego traté de agregar una columna a una tabla en mi proyecto. Reconstruí el proyecto y tomé el resultado y lo implementé como antes, y modificó correctamente la tabla existente, tal como lo hubiera hecho al hacer clic con el botón derecho y seleccionar Implementar.

Parece que funciona bien hasta ahora. ¡Espero que esto ayude!

5

Para una nueva instancia de base de datos (no una actualización incremental de una base de datos), MSDeploy debería funcionar. Here's una publicación rápida que encontré en el sujeto. No lo he hecho todavía, pero un colega dice que ha funcionado en su entorno.

Cuestiones relacionadas