En una relación de uno a varios, cada fila de la tabla relacionada con puede estar relacionada con muchas filas de la tabla relacionada. Esto permite que la información de uso frecuente se guarde sólo una vez en una tabla y se consulte muchas veces en todas las demás tablas. En una relación de uno a muchos entre la tabla A y la tabla B, cada fila de la tabla A está vinculada a 0, 1 o muchas filas de la tabla B. El número de filas de la tabla A es casi siempre menor que el número de filas de la tabla B.
Para ilustrar la relación de uno a muchos, considere el diseño de la tabla de muestra y los datos que aparecen a continuación:
Tabla de autores
columna |
|
id de autor |
clave principal |
apellido |
|
nombre |
|
tabla libros
columna |
|
idolibro |
clave primaria |
título |
|
identificación de autor |
clave externa – link to author_id of authors table |
author_id |
lastname |
firstname |
0001 |
henry |
john |
0002 |
smith |
adam |
0003 |
johnson |
mary |
0004 |
bailey |
harry |
libro_id |
título |
autor_id |
0001 |
A database primer |
0001 |
0002 |
Building a datawarehouse |
0001 |
0003 |
Teach yourself SQL |
0001 |
0004 |
101 recetas exóticas |
0002 |
0005 |
Visiting europe |
0004 |
Nota que cada fila de la tabla autores está relacionada con 0, 1 o varias filas de la tabla de libros. Esto tiene un sentido intuitivo porque un autor puede escribir 0, 1 o más de 1 libros. En nuestro ejemplo anterior, John Henry ha escrito 3 libros, Adam Smith ha escrito 1 libro, Mary Johnson no ha escrito ningún libro y Harry Bailey ha escrito 1 libro.
Si se fija bien, la relación anterior entre la tabla de autores y la tabla de libros es una relación de uno a muchos. Dando la vuelta, la relación entre la tabla de libros y la tabla de autores es una relación de muchos a uno.
Ver también: Relaciones uno a uno y relaciones muchos a muchos