Obter versão PostGIS

216

Como posso descobrir qual versão do PostGIS tenho?

Jason Swett
fonte

Respostas:

334

Como algumas das funções dependem de outras bibliotecas como GEOS e proj4, você também pode querer obter as versões deles. Então use:

SELECT PostGIS_full_version();
Nicklas Avén
fonte
33

Você tentou usar SELECT PostGIS_version();

Jon Conley
fonte
8
Cuidado: PostGIS_version()gera a versão principal e secundária (por exemplo, "2.1"), mas não o número da revisão (por exemplo, "2.1.4"), como PostGIS_full_version()e PostGIS_Lib_Version()faz.
Sean the Bean
10

Como as pessoas acima mencionaram, selecione PostGIS_full_version (); responderá sua pergunta. Na minha máquina, onde estou executando o PostGIS 2.0 a partir do tronco, recebo a seguinte saída:

postgres=# select PostGIS_full_version();
postgis_full_version                                                                  
-------------------------------------------------------------------------------------------------------------------------------------------------------
POSTGIS="2.0.0alpha4SVN" GEOS="3.3.2-CAPI-1.7.2" PROJ="Rel. 4.7.1, 23 September 2009" GDAL="GDAL 1.8.1, released 2011/07/09" LIBXML="2.7.3" USE_STATS
(1 row)

Você precisa se preocupar com as versões do PROJ e GEOS incluídas, se você não instalou um pacote completo - em particular, há alguma falha no GEOS antes da 3.3.2 ( conforme observado no manual do postgis 2.0 ) em lidar com a validade da geometria.

Pete Clark
fonte
7

Outra maneira de obter a versão secundária é:

SELECT extversion
FROM pg_catalog.pg_extension
WHERE extname='postgis'
Matias Barone
fonte
Os métodos acima me deram, No function matches the given name and argument types. You might need to add explicit type casts.mas este funcionou. O problema com o acima não trabalho foi fixada pelo fazendo a CREATE EXTENSION Postgispartir do console, em vez da partir dos db-migrate.js
Eric Darchis