به این چیزی که شما مطرح کردید نمیگن Offline !! در این روشی که شما اشاره کردید، فقط یک کپی از داده ها در سمت کلاینت نگه داری میشه و هر زمان لازم شد، برای انجام Update و سایر مسائل به سرور درخواستی ارسال میشه. در حالت Offline شما اینو دارید:دوست عزيز وقتي كه ميگيم استفاده از داده ها به صورت offline يعني recorset ي از سرور جدا ميشه، به كلاينت انتقال داده ميشه و ذخيره و بازيابي روي اون صورت ميگيره.
AdoDataSet.Connection := nil
اگه شما مدعی هستید که بدون کانکشن به سرور می تونید یک کوئری روی دیتاست بزنید، بسم الله...
نکته بعدی اینه که بحث ما سر مفهوم Offline یا Online نبود. بحث بر سر مزیت های کوئری بر Filter بود که شما مدعی بودید Filter هیچ مزیتی بر کوئری گرفتن نداره. فکر کنم تا الان باید با توجه به پست های قبلی جواب گرفته باشید که تغییر خصوصیت SQL = ریست شدن دیتاست. و ریست شدن دیتاست = ارسال مجدد درخواست به سرور و دریافت مجدد داده ها. این مسئله خیلی ساده و روشن هست. جای بحث اضافی هم نداره. اگر شما فکر می کنید می تونید بدون ریست شدن دیتاست خصوصیت SQL را تغییر بدید، یا روی دیتاست بدون نیاز به ارسال کوئری به سرور با SQL رکوردها را محدود کنید، بجای کشاندن بحث به مباحث نامرتبط، یک مثال ساده بزنید که توش تونستید روی یک DataSet بدون ریست کردن آن خصوصیت SQL را تغییر بدید. برای رد یک ادعا یک مثال نقض کفایت میکنه.
حالا اگر بحثی درباره Filter و کوئری با دستورات SQL دارید، من می شنوم، وگرنه الصاق زمین و زمان به این بحث مشکلی از کسی حل نمیکنه.