»
»
Claves foráneas. Qué son y porqué usarlas.

Claves foráneas. Qué son y porqué usarlas.

claves foráneas

Las claves foráneas o foreing keys son restricciones de seguridad para conseguir robustez y consistencia en las Bases de Datos.

Para entender la gran importancia que tienen, primero pondremos un ejemplo para ver cuándo se deberían de aplicar. Imaginemos la siguiente base de datos con dos tablas:

  • Tabla Productos. Compuesta por su id, nombre, precio, slug y categoría.
claves foráneas tabla productos
  • Tabla Categorías. Compuesta por su id, nombre y slug.
    La relación que existe entre ambas tablas es 1-N, una categoría puede estar en muchos productos y un producto solo puede tener una categoría.
claves foráneas tabla categorías
  • Fila insertada Deportes.

claves foráneas deportes
  • Producto Zapatillas. Asociado a la categoría deportes.
claves foráneas productos

Si por ejemplo tenemos la categoría Deportes creada y asociada con el producto Zapatillas, no tendría sentido que se borre la categoría y siga asociada con el producto.

Las claves foráneas realizan un control para evitar problemas de inconsistencia de datos.

Aunque este control se puede hacer a nivel de programación, es muy importante definir claves foráneas en nuestras aplicaciones informáticas, porque la programación puede fallar o los cambios pueden ser aplicados directamente sobre la Base de Datos.

Es decir, lo más seguro sería aplicar un control con claves foráneas y otro desde la propia programación.

Si tienes una web y buscas como mejorar tu posicionamiento en google pregúntanos, podemos ayudarte.

Tipos de Claves Foráneas.

  • Restrict. Bloquea la eliminación o actualización de la fila. En el ejemplo anterior con un caso restrict, si se eliminará la categoría deportes de la Base de Datos no se lo permitiría al estar asociada al producto zapatillas.

  • Cascade. Elimina o actualiza las filas asociadas. Por ejemplo al eliminar Deportes se eliminaría el producto zapatillas.

  • Set Null. Igual que el caso anterior, pero en vez de eliminar pondría a null la categoría del producto.
notificación claves foráneas

Recomendaciones

ejemplo claves foráneas
  • Nomenclatura. Nombre único para saber cuando se produce un error, que clave foránea ha sido. La nomenclatura que suelo usar es:
    fk-tabla1-tabla2-nombre atributo.

  • El atributo al que se debe de referenciar es siempre a la clave principal. En este caso el id de categorías.

  • Usa claves foráneas siempre que haya relaciones entre tablas, le darás una seguridad y consistencia a tus Bases de Datos.

  • Ten cuidado con las Bases de Datos que usas, no todas soportan claves foráneas. Si no las soportan, deséchalas inmediatamente.

Sé el primero en comentar

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*