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

Duda base de datos

Estas en el tema de Duda base de datos en el foro de Mysql en Foros del Web. hola tengo una duda: Una tabla puede tener dos o mas foreign key provenientes de una misma tabla?? es decir: create table trabajador ( codigo ...
  #1 (permalink)  
Antiguo 27/07/2008, 16:27
 
Fecha de Ingreso: julio-2008
Mensajes: 6
Antigüedad: 15 años, 8 meses
Puntos: 0
Duda base de datos

hola tengo una duda: Una tabla puede tener dos o mas foreign key provenientes de una misma tabla?? es decir:
create table trabajador
(
codigo varchar(10) not null,
:
:
primary key(codigo)
)ENGINE=InnoDB;
create table documento
(
numero int(5) not null,
:
:
trabajador1 varchar(10) not null,
trabajador2 varchar(10) not null,
foreign key (trabajador1) references trabajador(codigo),
foreign key (trabajador2) references trabajador (codigo)
)ENGINE=InnoDB;

Última edición por javijar; 27/07/2008 a las 16:28 Razón: escribi mal
  #2 (permalink)  
Antiguo 27/07/2008, 17:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Duda base de datos

Una tabla puede tranquilamente estar compuesta solamente por campos FK de múltiples tablas, con uno o más de ellos actuando de PRIMARY KEY.
Ese es el caso de las tablas originadas en una relación ternaria en el modelo E-R. En principio, se suele aconsejar que solamente se construyan tablas independientes si tienen al menos un atributo distinto (el que les da identidad), pero en el caso de relaciones N:N:N, puede darse el caso de una tabla que solamente contenga las FK. Un caso ejemplo qe se suele usar es el de una biblioteca: Las entradas correspondientes a una obra constan en su mayoría de Autor/es, Editorial, Ciudad, Tema, Estados, UbicaciónEjemplar{sala, estantería, lado, estante} y otros más, todos los cuales son en realidad FK de otras tantas tablas.
Todo depende del modelado del sistema en cuestión.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 01:48.