دلفي 6 -> دلفي 2006 dbexpress غرابة ؟
-
20-09-2019 - |
سؤال
يجب تطبيق قديم (مكتوب في دلفي 6) يجب أن يكون استدار إلى دلفي 2006 (تحديث 2).التطبيق يستخدم للاتصال ينترباسي 6.x بيانات باستخدام DBExpress ، ولكن الإصدار الجديد يحتاج للاتصال فايربيرد 2.x Superserver.
ترقية ذهب طيب, لا مشاكل حقيقية.ولكن الآن عندما أحاول الاتصال الجديدة فايربيرد الخادم من استدار التطبيق ، أحصل على الخطأ التالي:
خطأ في قاعدة البيانات خطأ ملقم قاعدة بيانات:رقم السجل الحالي على عملية إحضار
تشغيل نفس التطبيق المترجمة مع دلفي 6 ، يتحدث إلى نفسه فايربيرد الخادم يعمل بشكل جيد.التغييرات اللازمة لتجميع التطبيق في دلفي 2006 لم تكن ذات قاعدة البيانات رمز كل المكتبة المحلية الأشياء.يستخدم التطبيق TSQLDataset ar datasetproviders و clientdatasets.
أي شخص لديه أي فكرة عن كيف أو لماذا ؟ أي تغييرات على DBExpress التي قد تسبب هذا السلوك ؟ شكرا
المحلول
وأنا لا أعتقد دلفي 2006 الدعم فايربيرد أصلا. أعتقد أنك تحتاج إلى تثبيت FIBPlus
وهيريس قائمة ما معتمد في دلفي 2006:
Old driver New driver Database and Version
dbexpinf.dll dbxinf30.dll Interbase 7.5
dbexpora.dll dbxora30.dll Oracle 10g
dbexpdb2.dll dbxdb230.dll db2 UDB 8.x
dbexpmss.dll dbxmss30.dll MSSQL 2000
dbexpmys.dll dbxmys30.dll MySQL 4.0.24
dbexpasa.dll dbxasa30.dll Adaptive Sybase Anywhere 9
dbexpase.dll dbxase30.dll Sybase 12.5
dbexpinf.dll dbxinf30.dll Informix 9.x
نصائح أخرى
حتى دلفي 2010, المدمج في DBExpress السائقين رسميا لم يؤيد فايربيرد.
في الواقع, الكثير من تركيبات لم يعمل على الإطلاق.
إما:
- الذهاب DBExpress driver رسميا دعم فايربيرد (البحث في google),
- أو الانتقال إلى قاعدة بيانات أخرى الطبقة الوسطى (FIBPlus أن جيمس يوحي هو جيد حقا).
--يروين
وأولا وقبل كل شيء، إعادة المحاولة نفس الخطوات من التطبيق الجديد، 1-النموذج (وضع SQLConnection، SQLQuery الخ الخ)، ملء مع SQL تريد ومحاولة الاتصال.
وأعتقد أن هناك بعض المعلمات الاتصال الذي تغير بين الإصدارات، منذ ان كنت تستخدم D2006 DBexpress للوصول إلى فايربيرد الإصدار 2.x بالنجاح. لكن التطبيق لم استدار، ولكن مشاريع جديدة.