كيف يمكنني التأكد من قاعدة بيانات بوستجرس & الإصدار الذي يستخدم SQL ؟
-
01-07-2019 - |
سؤال
أنا بناء المثبت التطبيق.يحصل المستخدم على تحديد مصدر البيانات لديهم تكوين وتسمية ما نوع قاعدة البيانات هو.أريد أن تأكد من أن نوع قاعدة البيانات هو في الواقع بوستجرس ، إذا كان ذلك ممكنا, ما هو إصدار بوستجرس فهي تعمل عن طريق إرسال SQL إلى مصدر البيانات.
المحلول
جرب هذا:
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> select version();
+--------------------------------+
| version() |
+--------------------------------+
| 5.0.32-Debian_7etch1~bpo.1-log |
+--------------------------------+
1 row in set (0.01 sec)
لا يوجد إصدار الأوامر في sqlite بقدر ما أستطيع أن أرى.
نصائح أخرى
SHOW server_version;
(completeness)
SELECT 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 هذا يقول كيو في الإخراج
select version()
مثيرة للاهتمام ...إصدار() هو وظيفة!وأتساءل لماذا ؟ الإصدار لن تتغير أو العودة القيم المختلفة تحت مختلف المدخلات/ظرف من الظروف.
غريبة لأنني أتذكر من أيام في Sybase كان عالمي متغير الإصدار يمكن العثور عليها بالقيام "select @@version"