Comunidad de diseño web y desarrollo en internet online

Duda con clave foranea nula (uno a muchos)

Citar            
MensajeEscrito el 30 Abr 2012 02:32 pm
hola, tengo dos tablas una Casas y otra Usuarios

Donde un usuarios puede tener varias casas y una casa solo es de un usuario

Pero no todas las casas son de alguien , hasta que se compra , quisiera saber si es correcto dejar la llave foranea de las casas que no tiene dueño nula?


saludos

Por RIVERMILLOS

50 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 Abr 2012 03:16 pm
En tu lugar usaría un valor cero o que no sea válido en la tabla de dueños.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 30 Abr 2012 03:17 pm
En ese caso no hay problema que ese valor cero no este en la otra tabla?


saludos

Por RIVERMILLOS

50 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 May 2012 12:34 am
¿Estás hablando en la práctica o en la teoría?, en la teoría no debería suceder eso porque teóricamente no existe una casa sin dueño, pero en la práctica, es decir, tu sistema, sí puede.

Si quieres seguir la teoría, crea un dueño ficticio llamado "nadie" y asígnale esas casas a ese dueño, pero es que si pones cero es lo mismo, siempre que tú sepas el significado.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 01 May 2012 02:41 am
Yo crearía una tabla intermedia basada en en la 2 claves principales,
-> idPropietario
-> idCasa
Y que la primary key de esta tabla fuera el idCasa.

Así tendrías una tabla donde almacenas todas las casas que tiene cada propietario y en la que la idCasa solo puede aparecer una vez, con lo cual una casa no podría tener 2 propietarios, pero un propietario si podría tener varias casas.
Con eso te ahorras las claves foráneas entre las tablas y cada casa es independiente de los propietarios con lo que puede existir sin propietario.

Un saludo.

Por Abducted

Claber

489 de clabLevel

3 tutoriales

Genero:Masculino  

Mentalidad Renovada

chrome
Citar            
MensajeEscrito el 02 May 2012 04:20 pm
Las dos opciones son buenas , pero creo que es mas limpia la de Abducted.

Voy a hacer y les cuentos como me fue.

saludos

Por RIVERMILLOS

50 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 May 2012 04:21 pm
O_O

¿Y antes cómo lo tenías?.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 02 May 2012 04:27 pm
tenia algo parecido a eso pero con un llave primaria aparete y pense en hacerlo con la foranea nula sin ninguna tabla adicional , pero no me cuadraba.


saludos

Por RIVERMILLOS

50 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.