9.2/17 Como crear una relación

Para seguir con el ejemplo de esta serie de post he creado una tabla llamada FarmTrans, Ésta tiene un campo llamado FarmId, el cual quiero que esté relacionado con la tabla FarmTable.


Para poder relacionar las tablas siempre se debe relacionar la tabla secundaria con la tabla principal, Para que me entendáis, si creáis una relación en la tabla FarmTable relacionada con la FarmTrans por le campo FarmId, si quisiéramos crear una nueva granja en la FarmTable no nos dejaría crearlo si el registro no existiera en la FarmTrans, lo cual no tiene lógica. Así que recordad: siempre se relaciona la tabla secundaria con la principal.


Bien, explicada la teoría vamos a la practica. Nos dirigimos a la tabla FarmTrans al nodo Relations y abrimos el submenú, en el seleccionaremos "Nueva Relación".



Una vez creada la nueva relación (Relation1) nos dirigiremos a sus propiedades.


Iremos a las propiedades de la nueva relación y le indicamos un nombre en la propiedad Name y en la propiedad Table le asignamos la tabla con la que crearemos la relación.

Por regla general el nombre de la relación será el nombre de la tabla con la que se relacionará.



Se ha creado una relación pero no le hemos agregado campos. Para realizar esto, se lo indicaremos en las propiedades Nuevo y en este caso, seleccionaremos normal.


Nos encontraremos que se ha creado un nodo en la relación pero nos faltará indicarle los campos que están relacionados. Esto lo haremos en las propiedades de la relación en la cual le indicaremos el campo (Field) y el campo relacionado (RelatedField).



Vamos a decirle que queremos relacionar los campos FarmId (Uno es el existente en la FarmTable y el otro el de la FarmTrans)


Ahora en la relación se podrá ver como han quedado relacionadas las tablas.
La relación normal especifica una relación con uno o varios campos de otra tabla.
Si vamos a la tabla veremos que se nos muestra el típico icono de los campos con lookup, lo que nos desplegará todos los posibles valores de la tabla FarmTable en el campo FarmId de la FarmTrans.



Comentarios