Combinar esquemas

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Tutoriales > Base de datos "ZooDB" > Comparar esquemas de BD >

Combinar esquemas

Tras iniciar la comparación y examinar las diferencias que hay en los esquemas, puede combinar las diferencias encontradas. Como no es fácil deshacer los cambios realizados en la estructura de una BD, DatabaseSpy no ejecuta la combinación de datos directamente, sino que primero muestra un script de combinación en una ventana del Editor SQL, donde puede revisarlo y ejecutarlo (si está seguro de que los cambios deben confirmarse en la BD).

 

Puede combinar todas las diferencias de una sola vez (es decir, creando un script de combinación que contiene todos los cambios que se realizarán en la estructura del esquema) o combinar las diferencias de una en una (es decir, creando un script de combinación que contiene determinados cambios solamente). La combinación propiamente dicha se puede realizar en ambas direcciones (de izquierda a derecha o de derecha a izquierda). Por tanto, también puede mezclar la estructura de ambos esquemas.

 

En la imagen siguiente puede ver el script de combinación que copia la estructura del esquema dbo en el esquema test (combinación de izquierda a derecha).

merge_l2r

Pero si decide realizar una combinación de derecha a izquierda se genera este otro script:

merge_r2l

En este apartado del tutorial vamos a cambiar el nombre de la tabla test.tblVets y añadir la columna e-mail a las tablas dbo.tblZookeepers y test.tblVeterinarians.

 

 

Para combinar esquemas en la base de datos del zoo:

 

1.Seleccione el comando Comparación de esquemas | Contraer elementos.
2.Expanda la BD y el esquema y seleccione la tabla dbo.tblVeterinarians o la tabla test.tblVets.
3.Seleccione el comando Comparación de esquemas | Mostrar script de combinación: de izquierda a derecha.
El script de combinación se abre en una ventana nueva del Editor SQL.

merge_tblVets

 

Observe que el script contiene una sola instrucción para cambiar el nombre de la tabla y, sin embargo, la tabla tenía dos columnas con nombres distintos. Para generar un script de combinación que además del nombre de la tabla cambie el nombre de las dos columnas, seleccione las columnas antes de generar el script.

4.Cierre la ventana del Editor SQL sin ejecutar ni guardar el script y vuelva a la ventana de comparación de esquemas.
5.Expanda la tabla tblVeterinarians y seleccione el nombre de la tabla, así como las columnas LastName, Telephone y Email (mantenga pulsada la tecla Ctrl mientras selecciona los objetos).

merge_select-cols

6.Ahora seleccione el comando Comparación de esquemas | Mostrar script de combinación: de izda a dcha y revise el script de combinación que se abre en el Editor SQL.

merge_tblVets-complete

Ahora se cambiará el nombre de las dos tablas y la columna Email se añadirá al esquema test.

7.Compruebe que el Editor SQL sigue conectado a ZooDB y haga clic en Ejecutar ic_execute-sql.
8.En la ventana Explorador haga clic en Actualizar ic_refresh-datasource. Observe que la tabla dbo.tblVeterinarians ya no está asignada a ninguna tabla en la ventana de comparación de esquemas.

merge_tblVets-unmapped

9.Haga doble clic en el título del componente derecho de la comparación y en el cuadro de selección marque la casilla de la tabla tblVeterinarians. Haga clic en Aceptar para confirmar.
10.Haga clic en Iniciar la comparación ic_start-db-comparison. Observe que ya no hay diferencias entre las tablas dbo.tblVeterinarians y test.tblVeterinarians.
11.Expanda la tabla test.tblZookeepers, haga clic con el botón derecho en la columna Email y seleccione la opción Mostrar script de combinación: de derecha a izquierda del menú contextual.

merge_tblZook-r2l

12.Por último ya solo falta ejecutar el script de combinación generado, actualizar el origen de datos y realizar una comparación para ver los cambios en la ventana de comparación. Podrá comprobar que ya no existen diferencias entre las tablas dbo.tblZookeepers y test.tblZookeepers.

© 2019 Altova GmbH