Acabo de resolver este problema, literalmente, hace unos días. La solución es bastante complicada. Aquí va.
- Instale la versión de python 3.2.* solo en su sistema.
-
En Postgresql, use el comando 'CREATE LANGUAGE plpython3u' para instalar la compatibilidad con el lenguaje Python 3. La mayoría de las veces, dará el siguiente error "no se puede cargar ".....\plpython3.dll" error 126. (Tenga en cuenta que si se instala correctamente, no se mostrará ningún error).
-
En caso de que obtenga el error anterior, vaya a su directorio de instalación de python (el valor predeterminado es C:\python32) y busque "python3.dll" en la carpeta de DLL. Copie este archivo en su carpeta 'lib' de Postgresql en el directorio de instalación de Postgres (el valor predeterminado es c:\program files\postgres\9.x\lib\"). Cambie el nombre de este archivo copiado a python32.dll.
-
Ahora ejecute el comando 'CREAR IDIOMA plpython3u' nuevamente. Debería funcionar esta vez.
Para verificar, consulte la vista pg_available_extensions en las tablas del sistema de postgresql. La fila que contiene plpython3u debe tener un número de versión en la columna 'versión instalada'.
Nota:Esto solo funciona para el lenguaje plpython3u. No conozco ningún proceso similar para plpython2u.