Relacionar varias tablas en phpmyadmin

Estoy migrando una base de datos de access a MySQL, estoy en las relaciones de las tablas pero hay unas que no se dejan relacionar. Arroja un error "Error: ¡No se añadió la relación!", ya he revisado las llaves foráneas, el tipo de dato, el indice y no se que puede estar fallando.

Estuve investigando y se que se pueden relacionar por medio de código, pero no lo he logrado conseguir.

1 respuesta

Respuesta
1

¿

¿Podrías mandarme una copia de la base de datos o las tablas y especificar exactamente donde te da el error?

Creo que una vez me paso algo similar pero necesitaría ver las tablas que tiene el problema y que me digas como es que las estas migrando.

Buscando halle estas recomendaciones:

Saludos, a mi me salia el mismo error. Hay que checar dos cosas:
1. Que la tabla sea InnoDB.
2. Que los campos que desees relacionar sean indices (ya sea un primario y un indice normal)
Probablemente el tipo de tabla es MyISAM (no soporta relaciones). Debes cambiar las tablas que desees relacionar a InnoDB (si soporta relaciones).
Para hacer eso, en PHPMyAdmin desde el inicio:
1. Debes dar click en: Bases de datos >> "Nombre_DB"
2. Checar que tus tablas sean InnoDB, en la columna "tipo" debe decir "InnoDB"
Si no son InnoDB:
3. Dar click en el botón "estructura" de dicha tabla (icono de hoja blanca con una mano blanca) junto al nombre de la tabla.
4. Dar click en "Operaciones"
5. Eleir en "motor de almacenamiento" la opción InnoDB.
6.Dar click en "continuar"
Ahora en la lista de tablas debe salir en la columna "tipo" : InnoDB
Después de eso debe poderse relacionar los campos.
Nota: en caso de que aun no se pueda, es probable que necesites establecer el campo inicial como "llave primaria" y el otro como "indice"

¡Gracias por tu ayuda, ya lo he podido solucionar.

Te comento que el problema era que algunas llaves foráneas estaban vacías y por esto arrojaba el error.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas