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

Warning al crear tabla mysql

Estas en el tema de Warning al crear tabla mysql en el foro de Mysql en Foros del Web. Holas... he creado una tabla con el siguiente scrpt: Código: create table ELECTIVO ( ID_ASIGNATURA mediumint unsigned not null, ID_ALUMNO varchar(15) not null, ANIO_ELECTIVO year ...
  #1 (permalink)  
Antiguo 21/12/2007, 08:01
 
Fecha de Ingreso: febrero-2007
Mensajes: 70
Antigüedad: 17 años, 1 mes
Puntos: 1
Warning al crear tabla mysql

Holas...

he creado una tabla con el siguiente scrpt:
Código:
create table ELECTIVO
(
   ID_ASIGNATURA        mediumint unsigned not null,
   ID_ALUMNO            varchar(15) not null,
   ANIO_ELECTIVO        year not null,
   constraint FK_ELECTIVO foreign key (ID_ASIGNATURA)
      references ASIGNATURAS (ID_ASIGNATURA) on delete cascade on update cascade,
   constraint FK_ELECTIVO2 foreign key (ID_ALUMNO)
      references ALUMNOS (ID_ALUMNO) on delete cascade on update cascade,
   primary key (id_asignatura,id_alumno,anio_electivo)
)
ENGINE=InnoDB;
El phpmyadmin la creo , pero me sale un warning como este:
Las claves PRIMARIA e ÍNDICE no deben seleccionarse juntas para la columna 'IDASIGNATURA'
Alguien sabe el por que del warning... y en que puede afectar la eficiencia de mi tabla... es una tabla que tendrá máximo 3550 registros, ya que se borran cada 4 años, y ese es el número que alcanza en el peor de los casos y siendo pesimista

bueno ojalá me puedan responder..
de antemano gracias y saludos
  #2 (permalink)  
Antiguo 23/12/2007, 18:00
Avatar de hades87  
Fecha de Ingreso: diciembre-2007
Ubicación: Barcelona - España
Mensajes: 3.194
Antigüedad: 16 años, 4 meses
Puntos: 68
Re: Warning al crear tabla mysql

que no ahs de meter la FK y la lalve indice en le mismo campo, segun he visto.

Así que pon en 1 campo la fk y en toro al indice, aun que la indice nos e apra qeu se utiliza bien bien
  #3 (permalink)  
Antiguo 23/12/2007, 19:03
Avatar de pragone  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: Warning al crear tabla mysql

Pues no he trabajado mucho con InnoDB, pero te mando mi comentario por si sirve.

La lógica me dice que el problema probablemente venga por el "on update cascade". Tiene sentido que esto sea peligroso y que genere un Warning pues una actualización de la clave primaria en otra tabla (que no deberías hacer nunca si es un auto_generado) cree una violación del Constrain de clave primaria en esta.

Podrías probar quitando lo "on update" y decirnos si funciona
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 18:00.