Problemas con MySQL utilizando InnoDB y soltando una clave externa no utilizada. La clave externa hace referencia a la ID de otra tabla. Sin embargo, no necesito este campo.MySQL drop field; clave foránea errorno 150
He intentado eliminar el índice fk, lo cual no funciona, dice que es necesario en un contexto de clave externa. Y eliminando el campo, lo que me da un error:
1025 - Error al cambiar el nombre de './axis/#sql-ad8_1531' a' ./axis/Schedule'(Error: 150)
La mesa está actualmente vacío. No hay tablas que hagan referencia a este campo. ¿Alguna idea sobre cómo deshacerse de esto? ¿Además de crear una nueva tabla?
Si leo correctamente el siguiente error, no puedo abandonar la columna porque se ha declarado el índice fk. Y no puedo soltar el índice, porque la columna existe. Pollo & Huevo ??
ÚLTIMO EXTERIOR DE ERRORES CLAVE 111004 17:05:40 Error en la restricción de clave externa de la tabla de eje/Calendario: no existe un índice en la tabla que contendría las columnas como las primeras columnas, o los tipos de datos en la tabla no coincide con las de la tabla referenciada o una de las columnas ON ... SET NULL se declara NOT NULL. Restricción: , CONSTRAINT "fk_Schedule_Grp" FOREIGN KEY ("idGrp") REFERENCIAS "Grp" ("idGrp") AL ELIMINAR NINGUNA ACCIÓN EN ACTUALIZAR NO HAY ACCIÓN InnoDB: Renombrar tabla axis
. a axis
. Schedule
¡falló!
Usted es impresionante, creo que estaba confundiendo el índice con la restricción. Esto funcionó como un encanto para deshacerse de los tres. ¡Gracias! –