Altova DatabaseSpy 2024 Professional Edition

Una clave foránea es la relación entre dos tablas que sirve para garantizar que en ciertas columnas de una tabla se inserten solamente datos ya presentes en la otra tabla.

 

En nuestro ejemplo, lo que queremos es que solamente sea posible añadir un tipo de animal nuevo en la tabla tblAnimalTypes si ese tipo de animal ya existe como CategoryID en la tabla tblAnimalCategories.

To define the foreign key relationship:

Abra el proyecto "ZooDB" que creó antes y haga doble clic en el origen de datos dbs_ic_connected ConexiónBDZoo para conectarse a él.

1.Haga clic en el botón Editor de diseños ic_new-design-editor (Ctrl+D).

2.En la ventana Explorador haga clic en la tabla tblAnimalTypes, arrástrela y colóquela en la ventana del Editor de diseños.

3.Haga clic con el botón derecho en el diseño de tabla y seleccione Insertar nuevo/a | Clave | Clave foránea en el menú contextual.

En el diseño se crea una clave foránea, llamada <generado>, y su entrada está seleccionada para ser editada.

4.Si quiere, cambie el nombre de la clave por FK_CategoryID y pulse Entrar. Si deja <generado>, la base de datos generará automáticamente el nombre de la clave.

5.En la columna Referencia, haga doble clic en [seleccione la tabla a la que se hace referencia] y seleccione tblAnimalCategories en la lista desplegable. Bajo el nombre de la tabla aparece la primera columna, CategoryID, de la tabla a la que se hace referencia. Esto se puede dejar como está.

6.En la columna Columnas de la sección Clave, haga doble clic en la entrada AnimalTypeID que se insertó de forma predeterminada y seleccione Category en la lista desplegable.

 

dbs_zoo_foreign_key_01

 

7.Ahora, en la ventana Script de cambios de la estructura de la BD, haga clic en Ejecutar el script de cambios SQL generado ic_execute-sql para ejecutar el script de cambios y confirmar la nueva clave foránea en la BD.

8.Además, si quiere, haga clic con el botón derecho en la entrada FK_CategoryID del diseño de tabla y seleccione Agregar tablas relacionadas | Tablas a las que se hace referencia.

© 2017-2023 Altova GmbH