2011-01-28 14 views

Respuesta

255

Dado que algunas de las funciones dependen de otras bibliotecas como GEOS y Proj4 es posible que desee tener en sus versiones también. A continuación, use:

SELECT PostGIS_full_version(); 
30

¿Usted intentó utilizar SELECT PostGIS_version();

+4

Precaución: 'PostGIS_version()' da salida a la versión mayor y menor (por ejemplo, "2.1"), pero no el número de revisión (por ejemplo, "2.1.4"), como 'PostGIS_full_version()' y 'PostGIS_Lib_Version()' do. –

8

Como mencionan las personas anteriores, seleccione PostGIS_full_version(); responderá tu pregunta. En mi máquina, donde me estoy quedando PostGIS 2.0 del tronco, me sale el siguiente resultado:

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) 

usted tiene que preocuparse por las versiones de PROY y GEOS que se incluyen si usted no ha instalado un todo -inclusive package- en particular, hay algunos daños en GEOS anteriores a 3.3.2 (as noted in the postgis 2.0 manual) al tratar con la validez de la geometría.

4

Otra manera de obtener la versión menor es:

SELECT extversion 
FROM pg_catalog.pg_extension 
WHERE extname='postgis' 
+0

Los métodos anteriores me dieron 'Ninguna función coincide con el nombre y los tipos de argumentos. Es posible que necesite agregar yesos de tipo explícito, pero este funcionó. El problema con lo anterior no funciona se solucionó haciendo el 'CREATE EXTENSION Postgis' desde la consola en lugar de hacerlo desde db-migrate.js –

Cuestiones relacionadas