delphi4arab منتديات دلفي للعرب
ما الذي يحدث في الاداة DataSEt عند فلترة البيانات . - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : ما الذي يحدث في الاداة DataSEt عند فلترة البيانات . (/showthread.php?tid=9385)



ما الذي يحدث في الاداة DataSEt عند فلترة البيانات . - Delphi4Us - 11-05-2018

هناك ادوات مثل DataGride فيها فرز للبيانات عند ربطها بالاداة DataSet وعند فرز البيانات هناك طريقتين لفرز البيانات .

الطريقة الاولى وهي الانتقال الى السجل المحدد مع بقاء جميع السجلات في الاداة

الطريقة الثانية وهي اختفاء جميع السجلات ويقاء نتيجة البحث فقط

الان السؤال ثقنياً  ما الذي يحدث بالضبط .

هل بالطريقة الاولى يتم الانتقال الى السجل الموجود بالذاكرة فقط ، وهذا ما اتصوره

وهل بالطريقة الثانية هل يتم اخفاء باقي السجلات مع بقائها في الذاكرة ام يتم اعادة الاستعلام وملئ الاداة من جديد .

يعني عندي 10 الالاف سجل ، هل يطلب سجل واحد من قاعدة البيانات او لا يطلب اي شئ منها وانما يخفي الكل ويبقي فقط السجل المطلوب

الان السؤال الثالث بحال ان الاداة تعيد الاستعلام من جديد .

ما عدد السجلات التي يمكن اجراء بحث عليها باعادة الاستعلام من خلال اداة على شبكة محلية دون ان يتأثر الاداء

يعني مثلا نقول 5 الالاف سجل مع حقل Blob او عشرة من غير حقل Blob يعني من واقع التجربة عندكم .

وايضا عند النقر على احد الاعمدة لترتيب البيانات Order هل يتم ترتيبها بالذاكرة ام يتم الاستعلام من جديد


RE: ما الذي يحدث في الاداة DataSEt عند فلترة البيانات . - Lam.Abdeldjalil - 31-01-2020

السلام عليكم



العمل بـ locate /  filtre الخاصة بالـ dataset تجلب كل التسجيلات الذاكرة ثم تقوم بالبحث ، لذا لا أنصحك بإستعمالها في حال كانت البيانات ضخمة.



إذا كنت تستعمل مكونات devart ـ dac * توجد خاصية FilterSQL إستعملها ،أما إذا كنت تستعمل مكونات اخرى إبحث بـ Sql مع خاصية تحديد عدد السطور المجلوبة



في Zeos > Fetchrow =25 و option doSmartOpen

في devart ـ dac > FetchRows =25*  و FetchAll = false

Firedac ايضا فيها

Dbexpress لا توجد فيها



إقتباس :ما عدد السجلات التي يمكن اجراء بحث عليها باعادة الاستعلام من خلال اداة على شبكة محلية دون ان يتأثر الاداء


لا تنتظر حتى يتاثر Smile  ، بإستعمال الخاصية Fetchrow لن يتاثر