Relaciones

Categories:

MySQL es un administrador de bases de datos relacionales – RDBMS Relational Database Management System.
Se llaman relacionales porque los datos se manipulan según la teoría relacional o modelo relacional. – Modelo Relacional – Wikipedia

En una base de datos relacional podemos encontrar tres tipos * de relaciones entre registros almacenados en distintas tablas:

Uno a Uno – 1:1
Uno a Muchos – 1:M
Muchos a Muchos – M:M

Uno a Uno – 1:1

Relación 1:1

Un registro de la tabla 1 se relaciona únicamente con un registro de la tabla 2.
Un registro de la tabla 2 se puede relacionar únicamente con un registro de la tabla 1.
Ej.
Un usuario tiene un perfil.
El perfil pertenece a un usuario.

Uno a Muchos – 1:M

Relación 1:M

Un registro de la tabla 1 se puede relacionar con muchos registros de la tabla 2.
Un registro de la tabla 2 únicamente se puede relacionar con un registro de la tabla 1.
Ej.
Un usuario tiene muchas imágenes.
Esta imagen – una imagen en particular – pertenece a este usuario – un usuario en particular -.
Estas imágenes – un grupo de imágenes – pertenecen a este usuario – un usuario en particular -.

Muchos a Muchos – M:M

Relación M:M

Un registro de la tabla 1 se puede relacionar con muchos registros de la tabla 2.
Un registro de la tabla 2 se puede relacionar con muchos registros de la tabla 1.
Ej.
Un usuario puede estar inscrito a muchos cursos.
Un curso puede tener muchos usuarios inscritos.

Para poder definir las relaciones es necesario identificar a los registros:
– En la tabla donde están sus datos
– En la tabla donde tienen una relación

Eso lo vamos a ver en la publicación de identificadores.

* En algunos casos se considera la relación que Muchos a Uno – M:1 – que funciona como 1:M pero la tabla que se modifica es la independiente – más adelante vamos a ver ese concepto -.