2017-04-04 6 views
0

Ich muss sicherstellen, dass eine verfügbare PostgreSQL-Version nicht niedriger als erforderlich ist. Die Versionszeichenfolge könnte angefordert werden, wie folgt:Vergleichbare PostgreSQL-Versionsnummer

SELECT VERSION(); 

Es gibt mir so etwas wie:

PostgreSQL 9.5.4, die von Visual C++ kompiliert 1800 bauen, 64-Bit-

Theoretisch Ich könnte diese Zeichenfolge analysieren, aber ich bin mir nicht sicher, ob zukünftige Versionen des PostgreSQL-Servers diese Wortfolge beibehalten werden.

Hat PostgreSQL einen vorhersehbaren Versionsbericht, möglicherweise in Haupt- und Nebenversionsnummer aufgeteilt?

Antwort

1
show server_version_num; --returns 90602::text 
show server_version; --returns 9.6.2::text 
0

können Sie die PostreSQL Ansicht pg_settings abfragen, die bei pg_catalog

select * from pg_settings where name like '%version%'; 

Die Abfrage oben vorhanden ist, werden Sie zwei Einstellungen bringen:

name     other columns ..... 
server_version    ..... 
server_version_num   ..... 

Für Ihre speziellen Fall sollten Sie die folgende Konfiguration:

select name, setting, min_val, max_val 
    from pg_settings 
where name = 'server_version_num'; 

name     setting min_val max_val 
-------------------------------------------------- 
server_version_num  90503  90503 90503 

Von hier aus können Sie mit min_val und max_val arbeiten

Diese Abfrage an die von @ ŁukaszKamiński mit etwas mehr Details versehen Antwort entspricht

Verwandte Themen