سؤال

توجد أي طريقة لتحديد إصدار Firebird SQL قيد التشغيل؟ باستخدام SQL أو Code (Delphi، C ++).

وداعا

هل كانت مفيدة؟

المحلول

إذا كنت ترغب في العثور عليه عبر SQL يمكنك استخدامها get_context. للعثور على إصدار المحرك بهذا ما يلي:

SELECT rdb$get_context('SYSTEM', 'ENGINE_VERSION') 
             as version from rdb$database;

يمكنك قراءة المزيد عنه هنا Firebird أسئلة وأجوبة, ، لكنه يتطلب firebird 2.1 أعتقد.

نصائح أخرى

شيئين يمكنك القيام به:

  • استخدم API Services للاستعلام عن إصدار الخادم، isc_service_query() مع ال isc_info_svc_server_version معامل. يجب تعيين مجموعة مكونات دلفي المفضل لديك طريقة لف هذا API.
    ل C ++ هناك على سبيل المثال IBPP. الذي لديه IBPP::Service::GetVersion() لإرجاع سلسلة الإصدار.
    ما تعود إليه مع هذه هو نفس السلسلة التي تظهر في تطبيق لوحة التحكم.

  • إذا كنت بحاجة إلى التحقق مما إذا كانت هناك معينة متوفرة، فقد يكون ذلك كافيا (أو أفضل) لتنفيذ العبارات مقابل جداول النظام للتحقق مما إذا كانت العلاقة النظامية المعطاة أو بعض الحقل في تلك العلاقة متاحة. إذا كان ODS في قاعدة البيانات من إصدار أقدم قد لا يتم دعم بعض الميزات، على الرغم من أن إصدار الخادم مؤخرا بدرجة كافية.
    يمكن أيضا الاستعلام عن إصدار ODS عبر API، استخدم isc_database_info() يتصل.

قد يكون لديك fibplus ( http://www.devrace.com/en/fibplus/ ) ... يحتوي على جميع الأدوات والمصادر اللازمة لتثبيت وإلغاء التثبيت والبدء وإيقاف Firebird / Interbase وأيضا للحصول على إصدار الخادم وأكثر من ذلك. في أي حال، يمكنك الحصول على الإصدار من برنامج تشغيل العميل (fbclient.dll for Firebird). Delphidabbler ( http://www.delphidabbler.com/software/verinfo/download. ) لديه مصادر مجانية تحصل على إصدار ملف من أي DLL. يمكنك بسهولة استخدام ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top