Hola Carlos,
 
No es necesario que lo instales, basta con que te bajes los fuentes, de
todas maneras te tiro alguna idea de como funciona, basandome en algo que
recuerdo y otras cosas que deduzco.
 
Ellos deben tener una tabla en la base de datos con la version del esquema
de la base de datos.
 
Cada vez que actualizas la aplicacion, cuando arranca, compara la version de
base de datos que encuentra en esa tabla, en ese campo con la que se
requiere para la version que estas corriendo. Si hay diferencias, dispara el
proceso de actualizacion.
 
Para cada version de la base de datos ellos tienen un script que la migra de
la version anterior. Ejemplo:
 
script_version_001_a_002.sql
script_version_002_a_003.sql
script_version_003_a_004.sql
script_version_004_a_005.sql
 
El proceso de actualizacion no tiene mas que correr todos los scripts
necesarios.
 
En esos scripts, ademas de DDL hay sentencias de DML y, por supuesto, la
actualizacion de la version de la base de datos.
 
Un mecanismo sencillo que no te salva de mantener todos los cambios
necesarios de una version a otra.
 
Carlos Peix

  _____  

De: [email protected] [mailto:[email protected]] En nombre de Carlos Marcelo
Santos
Enviado el: Jueves, 26 de Marzo de 2009 06:03 p.m.
Para: [email protected]
Asunto: [dbms] Versionado de Base de Datos



Muchas Gracias por contestar Carlos.

Son las dos cosas. 

Por la primera empecé con la herramienta de Esteban Grinberb que me
recomendó Diego Jancic, http://opendbiff.codeplex.com/

Por la segunda sigo con lo que me recomendás. ¿Para mirar el mecanismo que
usa DotNetNuke tengo que instalárlo? o ¿hay algo para leer?

 

Un abrazo.

 

Carlos Marcelo Santos.

 

From: [email protected] [mailto:[email protected]] On Behalf Of Carlos Peix
Sent: Jueves, 26 de Marzo de 2009 02:41 p.m.
To: carlos.santos
Subject: [dbms] Versionado de Base de Datos

 

Hola Carlos,

 

1) No me queda claro si lo que vos necesitas es una herramienta para
comparar dos bases de datos y, eventualmente, sincronizarlas o...

 

2) Un procesimiendo para manejar artualizacion de version de base de datos
(de manera que sea compatible con la version de la aplicacion que se va a
ejecutar)

 

Me parece que es lo segundo porque dijiste que muchas bases de datos estaban
desconectadas de la red, lo cual impide la comparacion con una base de datos
de referencia.

 

Para el dos hace un tiempo vengo juntando links e ideas. Puedo mencionarte
que DotNetNuke usa un mecanismo asi desde hace años y funciona muy bien,
sugiero que lo mires.

 

Tambien reuni estos links:

http://sourceforge.net/projects/dbdeploy-net

http://www.agiledata.org/essays/databaseRefactoring.html

 

Suerte, contanos como te fue.

 

 

Carlos Peix

 

  _____  

De: [email protected] [mailto:[email protected]] En nombre de Carlos Marcelo
Santos
Enviado el: Jueves, 26 de Marzo de 2009 12:41 p.m.
Para: [email protected]
Asunto: [dbms] Versionado de Base de Datos

Hola Lista:

Tengo un desarrollo con una base de datos SQL 2005 Express sujeta a muchas
modificaciones, crear, modificar o eliminar tablas, relaciones, etc. La base
está distribuida en varios lugares, a veces, físicamente distantes, y en
algunos casos en equipos desconectados de cualquier red.

Las modificaciones las hacemos con un script que vamos ejecutando en cada
equipo

A veces, después de varias generaciones de modificaciones hay equipos que no
sabemos exactamente en qué grado de actualización quedaron.

¿Qué técnica me recomiendan para evitar estos problemas? ¿Existe alguna
herramienta free (o no) para comparar bases de datos? ¿Existe algo mejor o
complementario a la comparación?

 

Muchas Gracias.

 

Carlos Marcelo Santos.

 

Se certificó que el correo entrante no contiene virus.
Comprobada por AVG - www.avg.es
Versión: 8.5.278 / Base de datos de virus: 270.11.28/2022 - Fecha de la
versión: 03/25/09 18:54:00

Responder a