Foreign keys usando MAMP/PHP MyAdmin
2 seguidores
Hola,
No se si muchos usuarios de mac usais MAMP
Yo lo estoy usando y estoy creando una base de datos de prueba. El problema es que no conseguí configurar las foreign keys para relacionar las tablas. Por lo visto lo normal sería que apareciese una vista 'relaciones' para poder hacerlo. He seguido esta posible solucion pero nada.
¿Alguien más se ha encontrado con este problema?
deck1
El motor de almacenamiento es innoDB o MyISAM?
portishead
MyISAM
deck1
Pues creo que ahi está el fallo, la integridad referencial en MySql solo es soportada por InnoDB, que dicho sea de paso yo lo recomiendo por encima de MyISAM.
portishead
MyISAM es el motor de almacenamiento predeterminado en mi servidor MySQL. Mirando en la pestana de Motores me dice que InnoDB está disponible en este servidor MySQL. ¿Sabes de que manera pudo establecer ImnoDB como predeterminado?
deck1
No es necesario que establezcas InnoDB como predeterminado, puedes usar tablas con InnoDB y otras con MyISAM.
Para que una tabla utilice InnoDB, debes indicarlo al crearla:
<code>
CREATE TABLE IF NOT EXISTS `table` (
...
) ENGINE=InnoDB ;
</code>
portishead
¡¿Y esto lo puedo hacer sobre tablas ya creadas, es decir puedo cambiarles el ENGINE a las existentes?
deck1
No se si se podrá hacer directamente sobre la tabla, pero de todos modos, si no se puede, la solución es muy sencilla: Exportas la tabla como .sql (estructura y datos), la borras, cambias MyISAM por innoDB en el .sql generado al exportar, e importas de nuevo.
portishead
Vale, Muchas Gracias.