Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/08/2005, 05:41
msi
 
Fecha de Ingreso: marzo-2005
Mensajes: 70
Antigüedad: 20 años
Puntos: 0
Mysql y Foreign keys

Hola, estoy usando mysql Administrator para diseñar la BD y parece que no tengo claros los conceptos ya que al intentar borrar/modificar un registro me muestra el siguiente error: Cannot delete or update a parent row: a foreign key constraint fails

Supongamos el ejemplo típico de una liga de fútbol donde hay una temporada / equipo / entrenador. Estas 3 tablas tienen sus claves primarias correspondientes (#temporada, #equipo, #entrenador).

Existe una 4º tabla en la que se guardan los historiales de todo. Sería algo como: #cod, temp, equip, entre

Yo defino las claves foráneas en esta 4º tabla, 3 exactamente, temp como clave foránea de #temporada, equip como clave foránea de la tabla Equipo, etc..

Al definir las claves foráneas con mysqladministrator se crean también automáticamente 3 indices (uno por cada clave foránea). Todas las tablas son de tipo InnoDB. Mi intención es que si modifico las claves primarias de Temporada, o Equipo, o Entrenador, se modifique también en todos los registros de Historial asociados.

El caso es que cuando quiero borrar un registro de la tabla Temporada, Equipo o Entrenador me salta el error pero no tengo problemas a la hora de borrar un registro específico de Historial.

¿Que me paso por alto?