¿Necesita un corredor de la escritura de versiones de bases de datos .NET
-
21-09-2019 - |
Pregunta
Estoy mirando las bases de datos de versiones y se encontró con los artículos habituales relativas a cómo hacer esto (horror, oda al código, etc codificación). todo esto tiene sentido perfecto para mí, sin embargo yo estoy tratando de encontrar un corredor script que va a ejecutar las secuencias de comandos SQL para mí. Todos estos artículos hablar de tener algo para ejecutarlo automáticamente, pero ninguno de ellos hacer ninguna recomendación.
¿Alguien sabe de ninguna utilidad para ejecutar estas secuencias de comandos? Lo ideal es algo que funciona de la siguiente manera:
- Se ejecuta todo en una transacción por lo que si hay alguna actualización sola falla, todo el asunto falla
- No tengo control sobre el nombre de la tabla de base de datos versión de esquema
- Posibilidad de tener una serie de scripts que siempre se ejecuta si una actualización se lleva a cabo
-
Puede ejecutarse como parte de una tarea automatizada
editar
-
Open Source
Solución
SSW SQL Implementar - al parecer para hacer casi todo que está pidiendo. Se realiza un seguimiento de los guiones ya ejecutados, que va a ejecutar un lote de guiones a la vez y en varios servidores (si es necesario), y así sucesivamente.
Es una herramienta bastante simple, pero ingenioso - muy recomendable
!Otros consejos
Con DbUp como secuencias de comandos Runner en nuestro proyecto Web. Sus sencillo y bonito herramientas de código abierto que le ayudan a escribir es el propietario corredor de la escritura con la moda de aplicación de consola.
DbUp es una biblioteca .NET que le ayuda a implementar cambios en SQL Server bases de datos. Realiza un seguimiento de los scripts SQL se han ejecutado ya, y se ejecuta las secuencias de comandos de cambio que se necesitan para obtener su base de datos actualizada.
podemos ejecutar secuencias de comandos desde la carpeta en el sistema de archivos o se pueden incrustar a su montaje y ejecutarlos como scripts incrustados.
Puede encontrar más información y muestra en su repositorio de código en GitHub.