الاجراءات المخزنة مع مكونات IBDAC
#1
السلام عليكم ورحمة الله

في مكونات اخرى كان يكفي ان تقوم بفتح OPEN المكون ليتم تنفيذ الاجراء المخزن وجلب البيانات .
او تقوم بالتنفيذ مثل EXECPROC 
اما مع مكونات IBDAC لاينفع الامر Open او الامر EXECPROC 
وتحصل على رسالة تفيذ انه لا يوجد اي بيانات .
وانما لابد من تنفيذ هذا الامر قبل ذلك
كود :
Data1.ProcMAXMIN.PrepareSQL(true); Data1.ProcMAXMIN.ExecProc;

فهمت من ذلك انه يتم تكوين جملة SQL تجلب البيانات من  الاجراء .
هل هذه هي الطريقة الصحيحة ...؟
طبعا عملت بشكل طبيعي ولكن ما اخشاه ان يكون المكون IBCStoredProc يقوم على تنفيذ العملية مرتين
مرة لجلب البيانات ومرة اخرى للاستعلام من نفس البيانات .
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
الرد
#2
Huh Huh Huh Huh Huh
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
الرد
#3
وعليكم السلام ورحمة الله
عندي open .تعمل عادي لم افهمك جيدا
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#4
اخ موبايل هل استخدمت العبارة Open دون ان تستخدم هذا الامر
Data1.ProcMAXMIN.PrepareSQL(true)
اجل اذا استخدمت السطر البرمجي الاخير وبعدها الامر Open تعمل ولا استخدمت ExecProc
ولكن لا يعمل اذا لم استخدم PrepareSQL قبلها
انا ما اعمله ان الاجراءات المخزنة سريعة واخشى ان الامر PrepareSQL يحول العملية كلها الى مجرد استعلام View تم يطلب البيانات
ومعلوم ان الاستعلامات العادية بطيئة عن تنفيذ الاجراءات المخزنة
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
الرد
#5
أنا أستخدم مكونات unidac, وهذا من ملف المساعدة الخاص بالاجراء المخزن, العملية مثل ما كنت تظن
PHP كود :
Call the Prepare method to allocate, open, and parse cursor for a query. Calling Prepare before executing a query improves application performance. 

The UnPrepare method unprepares a query. 
[-] كل من 1 user says قال شكرا ل Ben.Ja على المشاركة المفيدة
  • Delphi4Us
الرد
#6
السلام عليكم
عذرا اخ علي على الغياب عن الموضوع
نعم استعمل Open مباشرة
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم