【问题标题】:How can I confirm a database is Postgres & what version it is using SQL?如何确认数据库是 Postgres 以及它使用 SQL 的版本?
【发布时间】:2010-09-11 04:48:38
【问题描述】:

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

【问题讨论】:

  • 停止重复问题! stackoverflow.com/questions/101184/…>
  • 它们不是重复的问题。迄今为止,我的研究表明您需要完全不同的方法来解决这个问题。

标签: sql postgresql


【解决方案1】:
SELECT version();

【讨论】:

    【解决方案2】:

    试试这个:

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

    【讨论】:

      【解决方案3】:

      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】:

        这是依赖于数据库的,如果此函数存在于另一个 dbms 中,则输出中会显示 PostgreSQL

        select version()
        

        【讨论】:

          【解决方案5】:

          SHOW server_version;

          (为了完整性)

          【讨论】:

            【解决方案6】:

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

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

            【讨论】:

              猜你喜欢
              • 2010-09-11
              • 2022-01-03
              • 2012-08-27
              • 2023-03-23
              • 1970-01-01
              • 2015-09-03
              • 2011-08-03
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多