2011-01-28 19 views

Odpowiedz

255

Ponieważ niektóre funkcje zależą od innych bibliotek, takich jak GEOS i proj4 może chcesz dostać swoje wersje też. Następnie użyj:

SELECT PostGIS_full_version(); 
30

Czy spróbować użyć SELECT PostGIS_version();

+4

Uwaga: 'PostGIS_version()' wyprowadza większych i mniejszych wersji (na przykład "2,1"), ale nie numer wersji (np. "2.1.4"), np. 'PostGIS_full_version()' i 'PostGIS_Lib_Version()' do. –

8

Jak wspomniano powyżej, wybierz PostGIS_full_version(); odpowie na twoje pytanie. Na moim komputerze, gdzie biegnę PostGIS 2.0 od tułowia, pojawia się następujący komunikat:

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) 

Trzeba dbać o wersjach PROJ i GEOS, które zostały uwzględnione, jeśli nie zainstalować wszystko pakiet - w szczególności GEOS ma pewne defekty przed 3.3.2 (as noted in the postgis 2.0 manual) w kwestii ważności geometrii.

4

Inny sposób, aby uzyskać drobne wersji jest:

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

Powyższe metody dały mi "Żadna funkcja nie pasuje do podanej nazwy i typów argumentów. Może być konieczne dodanie wyraźnych rzutów typów. ", Ale ten działał. Problem z powyższym nie działa został naprawiony przez wykonanie 'CREATE EXTENSION Postgis' z konsoli zamiast z pliku db-migrate.js –

Powiązane problemy