MySQL - Claves foraneas

 
Vista:

Claves foraneas

Publicado por frank (1 intervención) el 30/03/2012 16:57:24
HOLA

Para definir un campo como clave foranea en una tabla, ¿este campo debe ser clave primaria en la otra tabla referenciada?
¿No se puede definir como clave foranea un campo que haga referencia a otro campo que no sea clave primaria?.

Muchas gracias por su atencion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Claves foraneas

Publicado por Gonzalo GC (2 intervenciones) el 30/03/2012 20:31:55
Para definir un campo como clave foranea en una tabla, ¿este campo debe ser clave primaria en la otra tabla referenciada?

Si no fuese así, no sería una clave foranea... ¿No te parece?

Una clave foranea es siempre un campo o conjunto de campos que referencian a la clave primaria de otra tabla. Siempre.


¿No se puede definir como clave foranea un campo que haga referencia a otro campo que no sea clave primaria?.

MySQL Admite como excepción usar un campo no PK si y sólo si el campo en cuestión está definido como UNIQUE en su tabla. En esencia eso sigifica que o es una PK o es una clave candidata.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar