سؤال

أقوم بنقل رمز قديم حقًا لاستخدام مكونات UNIDAC. لقد ضربت جدارًا مع تحديث محدد SQL يغير حقلًا يسمى "العودة". ببساطة لف الحقل في عروض الأسعار لا يحل المشكلة ، لأن لهجة SQL في قاعدة البيانات هي 1 ، والتي لا تدعم محددات حقل اقتباس مزدوج. هل هناك أي طريقة حول هذا دون تغيير الحقل؟ أنا في Delphi 7 ، وأنا أبتعد عن مكونات DB بين الحماة.

يحرر: SQL كما يلي:

update logger set
returning = :RETURNING
where locator = :LOCATOR

إرجاع الخطأ التالي عند محاولة التحضير:

---------------------------
Ww
---------------------------

Dynamic SQL Error
SQL error code = -104
Token unknown - line 3, char -1
where.
---------------------------
OK   
---------------------------

يحدث هذا حتى عندما أقوم بتعيين لهجة العميل SQL على 1 في الكود:

query1.Connection.SpecificOptions.Values['SQLDialect'] := '1';
هل كانت مفيدة؟

المحلول

اضطررت للتحدث مع المطور. لقد تمت معالجتها إلى نقطة معينة ، لكنني بحاجة إلى إزالة جميع المعلمات في الاستعلام قبل تنفيذها. غريب جدا ، لكنه حل بديل:/

نصائح أخرى

هل من الممكن لك إنشاء طريقة عرض تاركة كل شيء متماثلًا باستثناء هذا الحقل واستخدام هذا العرض في التطبيق الخاص بك؟

هل من الممكن تشغيل هذا التطبيق باستخدام DLL العميل لـ Firebird <2.1 (1.5 على سبيل المثال) وخادم مع نفس الإصدار؟

أعتقد أن هذا يرجع إلى بناء الجملة الجديد حيث العائد هو كلمة محجوزة!

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