Altova MapForce 2023 Enterprise Edition

Cuando las tablas de BD no tienen relaciones entre sí, puede crear relaciones de clave principal y foránea entre columnas de distintas tablas directamente en MapForce (relaciones locales). Como claves principales y foráneas se puede usar cualquier columna de la base de datos. Además, se pueden crear relaciones nuevas además de las que ya existen en la base de datos. Las relaciones definidas localmente desde MapForce se guardan con la asignación.

 

La siguiente tabla enumera todos los campos posibles entre los que puede definir relaciones locales. Es posible crear relaciones mixtas (por ejemplo, asignar los resultados de un procedimiento almacenado a una columna de BD). Los campos que forman parte de la relación deben tener el mismo tipo de datos o uno compatible.

 

Clave principal/única

Clave foránea

Columna de una tabla o vista de BD

Parámetro de salida o valor devuelto de un procedimiento almacenado (consulte también Procedimientos almacenados)

Columna de conjunto de registros devuelta por procedimiento almacenado*

Columna de una instrucción SELECT definida por el usuario (consulte también Instrucciones SQL SELECT como tablas virtuales).

Columna de tabla o vista de BD

Parámetro de entrada de un procedimiento almacenado

Parámetro de entrada de una instrucción SELECT definida por el usuario

 

* Se aplica si se llama al procedimiento almacenado como fuente de datos (sin parámetros) o como función (con parámetros de entrada y salida). Para que el conjunto de registros esté disponible y se pueda seleccionar debe ejecutar el procedimiento almacenado una vez para obtener ese conjunto de registros.

 

Ejemplo

En la BD AltovaNoRelation.sqlite (almacenada en la carpeta Tutorial) hay una clave primaria en cada tabla, pero todavía no se ha definido ninguna clave foránea (imagen siguiente).

mf_db_relationships_11

En este ejemplo el objetivo es hacer referencia a la tabla Altova en la tabla Office y a la tabla Office en la tabla Department. Para ello siga estos pasos:

 

1.Agregue la BD AltovaNoRelation.sqlite a la asignación y seleccione todas las tablas de usuario.

2.Haga clic en el botón Agregar o editar relaciones en el cuadro de diálogo Insertar objetos de la base de datos.

3.Haga clic en Agregar relación en el cuadro de diálogo Agregar o editar relaciones (imagen siguiente).

4.Haga clic en [seleccionar objeto] en la columna Objeto de clave principal/única y seleccione Altova. Ahora seleccione ClavePrimaria en la lista desplegable [seleccionar columna].

5.Haga clic en [seleccionar objeto] en la columna Objeto de clave foránea y seleccione Office. Ahora seleccione ClaveForánea en la lista desplegable [seleccionar columna]. Los pasos 4 y 5 crean una relación de clave principal y foránea entre las tablas Altova y Office.

6.Agregue una relación nueva, haga clic en [seleccionar objeto] en la columna Objeto de clave principal/única y seleccione Office. Ahora seleccione ClavePrimaria en la lista desplegable [seleccionar columna].

7.Haga clic en [seleccionar objeto] en la columna Objeto de clave foránea y seleccione Department. Ahora seleccione ClaveForánea en la lista desplegable [seleccionar columna].

8.Haga clic en Aceptar para terminar de crear la definición de relación local.

mf_db_relationships_16

Una vez haya terminado de definir las relaciones locales, el componente AltovaNoRelation se habilita en el área de asignación (imagen siguiente). El componente muestra tres posibles estructuras de BD. En cada una de ellas la tabla raíz es distinta. Por ejemplo, en la estructura ampliada de más abajo, Altova es la tabla raíz. En función de lo que necesite, puede asignar datos desde cualquiera de las estructuras del componente. También puede combinar tablas de distintas estructuras. Para más información consulte el apartado Gestionar relaciones de BD.

mf_db_relationships_17

 

© 2017-2023 Altova GmbH