sql >> Base de Datos >  >> RDS >> PostgreSQL

Migración de MySQL a PostgreSQL

Steve, tuve que migrar mi antigua aplicación al revés, es decir, PgSQL->MySQL. Debo decir que deberías considerarte afortunado;-)Los errores comunes son:

  • SQL está bastante cerca del lenguaje estándar, por lo que puede sufrir del dialecto de MySQL que ya conoce
  • MySQL trunca silenciosamente los varchars que exceden la longitud máxima, mientras que Pg se queja:la solución rápida es tener estas columnas como 'texto' en lugar de 'varchar' y usar disparadores para truncar líneas largas
  • se utilizan comillas dobles en lugar de apóstrofes inversos
  • Los campos booleanos se comparan usando los operadores IS y IS NOT, sin embargo, INT(1) compatible con MySQL con =y <> todavía es posible
  • no hay REEMPLAZO, use la combinación ELIMINAR/INSERTAR
  • Pg es bastante estricto en hacer cumplir la integridad de las claves externas, así que no olvide usar ON DELETE CASCADE en las referencias
  • si usa PHP con PDO, recuerde pasar un parámetro al método lastInsertId(); debe ser el nombre de secuencia, que se crea generalmente de esta manera:[tablename]_[primarykeyname]_seq

Espero que eso ayude al menos un poco. ¡Diviértete jugando con Postgres!