如何确认数据库是Postgres&它使用SQL的版本是什么?

时间:2008-09-19 11:29:12

标签: sql postgresql

我正在为应用程序构建安装程序。用户可以选择他们已配置的数据源并指定它是什么类型的数据库。我想确认数据库类型确实是Postgres,如果可能的话,通过向数据源发送SQL语句来运行它们正在运行的Postgres版本。

6 个答案:

答案 0 :(得分:4)

试试这个:

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中没有版本命令。

答案 1 :(得分:4)

SHOW server_version;

(完整性)

答案 2 :(得分:2)

SELECT version();

答案 3 :(得分:2)

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)

答案 4 :(得分:2)

这是依赖于DB的,如果此函数存在于另一个dbms中,这表示输出中的PostgreSQL

select version()

答案 5 :(得分:0)

有趣......版本()是一个功能!我想知道为什么?在不同的输入/环境下,版本不会改变或返回不同的值。

好奇,因为我记得以前在Sybase中曾经是一个全局变量,可以通过“select @@ version”找到版本