我正在为应用程序构建安装程序。用户可以选择他们配置的数据源并指定它是什么类型的数据库。我想确认数据库类型确实是 Postgres,如果可能,通过向数据源发送 SQL 语句来确认它们正在运行的 Postgres 版本。
modius
问问题
635 次
6 回答
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 中没有版本命令。
于 2008-09-19T11:33:30.157 回答
4
SHOW server_version;
(为了完整性)
于 2008-09-19T11:45:24.643 回答
2
SELECT version();
于 2008-09-19T11:32:28.257 回答
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)
于 2008-09-19T11:33:41.763 回答
2
这取决于数据库,如果此函数存在于另一个 dbms 中,则在输出中表示 PostgreSQL
select version()
于 2008-09-19T11:34:10.250 回答
0
有趣... version() 是一个函数!我想知道为什么?在不同的输入/情况下,版本不会改变或返回不同的值。
很好奇,因为我记得过去在 Sybase 中它曾经是一个全局变量,并且可以通过执行“select @@version”来找到版本
于 2008-09-19T11:50:38.343 回答