Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Relaciones 1 a 1 en SQl server 2012

Estas en el tema de Relaciones 1 a 1 en SQl server 2012 en el foro de SQL Server en Foros del Web. Buenas tardes, venia a hacer una pequeña consulta: tengo SQL server 2012 en una bas de datos dos tablas: Alumno e usuario y quiero hacer ...
  #1 (permalink)  
Antiguo 03/11/2015, 14:04
 
Fecha de Ingreso: julio-2014
Mensajes: 116
Antigüedad: 10 años, 4 meses
Puntos: 1
Relaciones 1 a 1 en SQl server 2012

Buenas tardes, venia a hacer una pequeña consulta: tengo SQL server 2012
en una bas de datos dos tablas: Alumno e usuario y quiero hacer una relacion uno a uno de su atributo "Rut" que ambos tienen y francamente nose como hacerlo, solo se hacer relaciones uno a muchos con FK, alguin podria darme una mano por favor?, de antemano gracias
  #2 (permalink)  
Antiguo 03/11/2015, 14:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Relaciones 1 a 1 en SQl server 2012

Es una pregunta genérica, no es solamente para SQL Server.
Toda relación 1:1 require que una y sólo una de las tablas se relacione por FK con otra tabla.
NUNCA deben existir FK simétricas entre ambas, por lo que el RUT debe ser PK en una tabla y FK en la otra (donde también podría ser PK al mismo tiempo).
En general, un Usuario es una condición o atributo del Alumno, por lo que lo primero que existe y en consecuencia es la entidad fuerte, es el ALUMNO. El Usuario pasa a ser una tabla dependiente de Alumno.
En ese contexto, debes crear una FK desde Usuario a Alumno, sobre el campo RUT, y a su vez el RUT debe ser la PK de la tabla Alumno.

¿Se entiende?

NO DEBES crear una FK desde Alumno a Usuario. La dependencia ya está definida por la FK de Usuario. Si por error definieras una FK en sentido inverso te encontrarías con una relación circular, que es de cumplimiento imposible.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 03/11/2015, 14:28
 
Fecha de Ingreso: julio-2014
Mensajes: 116
Antigüedad: 10 años, 4 meses
Puntos: 1
Respuesta: Relaciones 1 a 1 en SQl server 2012

o sea RUT usuario es la FK?
  #4 (permalink)  
Antiguo 03/11/2015, 15:50
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: Relaciones 1 a 1 en SQl server 2012

Mas claro, ni el agua...
__________________
MCTS Isaias Islas
  #5 (permalink)  
Antiguo 03/11/2015, 17:22
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Relaciones 1 a 1 en SQl server 2012

Cita:
Iniciado por jmfmagnum Ver Mensaje
o sea RUT usuario es la FK?

Leelo todo de nuevo, con cuidado y procurando entender.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: 2012, relaciones, server, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:21.