¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
Relación uno a uno en bases de datos: Concepto, Ejemplo y aplicación en Diagramas Entidad-Relación
Portada » Relación uno a uno en bases de datos: Concepto, Ejemplo y aplicación en Diagramas Entidad-Relación

Tiempo de lectura estimado: 3 minutos

Anuncios
Publicidad

Relación uno a uno en bases de datos: Concepto, Ejemplo y aplicación en Diagramas Entidad-Relación

En esta guía aprenderás qué es una relación uno a uno (1:1) en bases de datos, cómo representarla en un diagrama entidad-relación (ER) y cómo implementarla en MySQL con un ejemplo práctico.


¿Qué es una relación uno a uno en bases de datos?

Una relación uno a uno ocurre cuando:

  • Cada registro de una entidad corresponde a un único registro en otra entidad.
  • Ningún registro puede estar vinculado a más de un registro en la entidad relacionada.

Es decir:
👉 Un elemento de la tabla A se relaciona con un solo elemento de la tabla B, y viceversa.


Ejemplo práctico: Persona y DNI

Pensemos en la relación entre una persona y su DNI (Documento Nacional de Identidad).

  • Desde el punto de vista de la persona: cada persona tiene un único DNI.
  • Desde el punto de vista del DNI: cada DNI pertenece solo a una persona.

Por lo tanto, la relación es estrictamente 1:1.


Representación en un diagrama Entidad-Relación

Para visualizar este caso, usamos un diagrama ER con las siguientes entidades y atributos:

  • Entidad Persona
    • Atributos: ID_persona (clave primaria), nombre, apellido.
  • Entidad DNI
    • Atributos: ID_dni (clave primaria), numero_dni, fecha_emision.

Relación y cardinalidad

  • Cada persona tiene exactamente un DNI.
  • Cada DNI pertenece a una sola persona.
  • En el diagrama ER, esta relación se representa con un 1:1 en ambos lados.

📌 Visualmente, entre las entidades Persona y DNI se dibuja una línea con un “1” en cada extremo.


Implementación en MySQL

Podemos llevar este modelo a una base de datos relacional creando dos tablas.

CREATE TABLE persona ( ID_persona INT PRIMARY KEY, nombre VARCHAR(50), apellido VARCHAR(50) ); CREATE TABLE dni ( ID_dni INT PRIMARY KEY, ID_persona INT UNIQUE, numero_dni VARCHAR(20), fecha_emision DATE, FOREIGN KEY (ID_persona) REFERENCES persona(ID_persona) );

Relación uno a uno en bases de datos: Entidad relación
Relación uno a uno en bases de datos: Concepto, Ejemplo y aplicación en Diagramas Entidad-Relación

Detalles importantes:

  • La tabla persona guarda los datos básicos de cada persona.
  • La tabla dni incluye una clave foránea (ID_persona) que apunta a la persona a la que pertenece el documento.
  • La restricción UNIQUE en ID_persona garantiza que un DNI no pueda vincularse a más de una persona, asegurando la relación uno a uno.

Inserción de datos

Ahora probemos el modelo insertando registros:

INSERT INTO persona (ID_persona, nombre, apellido) 
VALUES (1, 'Juan', 'Pérez');

INSERT INTO dni (ID_dni, ID_persona, numero_dni, fecha_emision) 
VALUES (1, 1, '12345678X', '2025-01-01');

➡️ Con estas sentencias, hemos vinculado a Juan Pérez con su DNI 12345678X.


¿Para qué sirven las relaciones uno a uno?

Este tipo de relación es útil cuando necesitas separar información en varias tablas para:

  • Evitar redundancia.
  • Asegurar consistencia.
  • Mejorar la seguridad (por ejemplo, guardar información sensible en otra tabla).
  • Facilitar la escalabilidad del sistema.

Ejemplos comunes:

  • Persona ↔ DNI
  • Usuario ↔ Perfil
  • País ↔ Capital

La relación uno a uno (1:1) es un concepto básico pero esencial en el diseño de bases de datos. Permite mantener la integridad de los datos y modelar situaciones donde la correspondencia entre entidades debe ser estrictamente exclusiva.

Con el ejemplo de Persona ↔ DNI, has visto cómo representarla en un diagrama ER y cómo implementarla en MySQL mediante claves primarias, foráneas y restricciones UNIQUE.

Si te ha gustado este artículo, ¡no olvides compartirlo y suscribirte para más contenido como este!

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)

Deja una respuesta

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
error: Content is protected !!
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.