簡體   English   中英

如何確認數據庫是Postgres以及使用SQL的版本是什么?

[英]How can I confirm a database is Postgres & what version it is using SQL?

我正在為應用程序構建安裝程序。 用戶可以選擇他們已配置的數據源並指定它是什么類型的數據庫。 我想確認數據庫類型確實是Postgres,如果可能的話,通過向數據源發送SQL語句來運行它們正在運行的Postgres版本。

試試這個:

mk=# SELECT version();
                                            version                                            
-----------------------------------------------------------------------------------------------
 PostgreSQL 8.3.3 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
(1 row)

該命令在MySQL中也有效:

mysql> select version();
+--------------------------------+
| version()                      |
+--------------------------------+
| 5.0.32-Debian_7etch1~bpo.1-log | 
+--------------------------------+
1 row in set (0.01 sec)

據我所知,sqlite中沒有版本命令。

SHOW server_version;

(完整性)

SELECT version();

PostgreSQL有一個你可以調用的version()函數。

SELECT version();

它將返回如下內容:

                                            version
-----------------------------------------------------------------------------------------------
PostgreSQL 8.3.3 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)

這是依賴於DB的,如果這個函數存在於另一個dbms中,這就是輸出中的PostgreSQL

select version()

有趣......版本()是一個功能! 我想知道為什么? 在不同的輸入/環境下,版本不會改變或返回不同的值。

好奇,因為我記得以前在Sybase中它曾經是一個全局變量,版本可以通過“選擇@@版本”找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM