Acabei de resolver este problema, literalmente alguns dias atrás. A solução está bastante envolvida. Aqui vai.
- Instale a versão python 3.2.* apenas em seu sistema.
-
No Postgresql, use o comando 'CREATE LANGUAGE plpython3u' para instalar o suporte à linguagem Python 3. Na maioria das vezes, ele dará o seguinte erro "não foi possível carregar ".....\plpython3.dll" erro 126. (Observe se ele for instalado corretamente, nenhum erro será exibido.)
-
Caso você receba o erro acima, vá para o diretório de instalação do python (o padrão é C:\python32) e procure por "python3.dll" na pasta da DLL. Copie este arquivo para a pasta 'lib' do Postgresql no diretório de instalação do Postgres (o padrão é c:\program files\postgres\9.x\lib\") Renomeie este arquivo copiado para python32.dll.
-
Agora execute o comando 'CREATE LANGUAGE plpython3u' novamente. Deve funcionar desta vez.
Para verificar, confira a visualização pg_available_extensions nas tabelas de sistema do postgresql. A linha contendo plpython3u deve ter um número de versão na coluna 'versão instalada'.
Nota:Isso só funciona para a linguagem plpython3u. Eu não conheço nenhum processo semelhante para plpython2u.