アプリケーションのインストーラーを作成しています。ユーザーは、構成したデータソースを選択し、それがどのタイプのデータベースであるかを指定できます。データベースの種類が確かに 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
これは DB 依存であり、この関数が別の dbms に存在する場合、出力に PostgreSQL と表示されます
select version()
于 2008-09-19T11:34:10.250 に答える
0
興味深い... version() は関数です! なぜだろう?バージョンは、異なる入力/状況下で異なる値を変更または返すことはありません。
昔からSybaseではグローバル変数であり、「select @@version」を実行することでバージョンを知ることができたのを覚えているので、興味があります
于 2008-09-19T11:50:38.343 に答える