No funcionan Foreign keys en mysql 5

martes, 15 de abril de 2008
Publicado por Ivan

La verdad es que este es otro caso en el cuál pensar ayuda bastante. Resulta que para el manejo de datos y de la estructura de mis bases de datos mysql uso Mysql maestro, que creo que ya recomendé toda la suite sql maestro ampliamente en todos sus sabores, para oracle, mysql, postresqgl, sqlite, y aprovecho de recomendar un producto que lanzaron que es el anysql, que funciona con cualquier base de datos a través de un conector odbc.

Bueno, el tema es que había bajado e instalado el appserv 4.5.9, que es el programa con el que suelo trabajar ya que es muy cómodo que venga con las 3 aplicaciones (apache, php, mysql) compiladas y funcionando impeque entre sí. Por defecto trae a mysql con el motor de almacenamiento myisam, y no trae compilado el innodb. El tema fué que cuando quise poder utilizar foreign keys en mysql, el mysql maestro no me dejaba. Así que me fuí por el lado del phpmyadmin esperando encontrar algo, pero phpmyadmin nunca ha traido la opción de manejar foreign keys. Entonces vi el motor de almacenamiento: Myisam. Este no permite el manejo de foreign keys, y en cambio innodb si lo permite, por lo que la solución para usar foreign keys era obvia: debía tener en todas las tablas a innodb como motor de almacenamiento. El tema es que ese módulo no viene en el mysql que trae appserv, por lo que tuve que hacer fué bajar la ultima versión de mysql desde su sitio, y entonces instalarla aparte de la base de datos que viene con appserv, desinstalandola previamente. Afortunadamente, el phpmyadmin reconoció la nueva base de datos sin problemas a pesar de instalar en una ubicación distinta, y ahora todo funciona impeque. Espero en algún momento tener el tiempo de ver si xampp incluye en su mysql el motor innodb en forma predeterminada para poder trabajar con ese programa en el futuro si es que fuera necesario.

0 comentarios: