PDA

View Full Version : سرعت خيلي پايين در فيلتر ديتا در رويداد change



mohammad diba
پنج شنبه 01 مرداد 1388, 11:50 صبح
با سلام من يه برنامه تحت شبكه با sql server دارم . برنامه كامل كار ميكنه ولي در رويداد change يه تكست بكس كه مي خوام فيلتر كنم خيلي كنده تعداد ركوردهاي موجود170000 است. من برنامه تحت شبكه خيلي ديدم كه تويه رويداد change كد دارند و سرعت هم خوبه چه كار كنم سرعت بالاتر بشه؟ ممنون ميشم كمكم كنيد.

Reza_Yarahmadi
جمعه 02 مرداد 1388, 10:11 صبح
یه راه اینه که جدول مورد نظرت رو از سرور به روی کلاینت بیاری (توی DataSet ، DataTable ، ...) و جستجوها رو بر روی جدولهای مجازیت انجام بدی.
میتونی هر زمان که درج و یا آپدیتی روی جدولهای اصلی انجام میشه جدولهای مجازیت رو هم بروز کنی و یا هر چند دقیقه یکبار عمل بروز رسانی رو انجام بدی.

mohammad diba
دوشنبه 19 مرداد 1388, 14:03 عصر
یه راه اینه که جدول مورد نظرت رو از سرور به روی کلاینت بیاری (توی DataSet ، DataTable ، ...) و جستجوها رو بر روی جدولهای مجازیت انجام بدی.
میتونی هر زمان که درج و یا آپدیتی روی جدولهای اصلی انجام میشه جدولهای مجازیت رو هم بروز کنی و یا هر چند دقیقه یکبار عمل بروز رسانی رو انجام بدی.

پر کردن داده ها در یک دیتاست خیلی طول میکشه این روش خیلی منطقی به نطر نمیاد.

mn_zandy63
سه شنبه 20 مرداد 1388, 00:25 صبح
آره برای منم توی یک برنامه قدیمی که خیلی وقت پیش نوشتم همینطوره٬ با .net 1 و SQL 2000.
تنها راهی که به ذهنم رسید این بود که توی فرم یک textbox گذاشتم که حداکثر تعداد سطرهای بازگشتی رو میشه توش وارد کرد. و به طور پیش فرض گذاشتمش مثلا ۵۰ یا ۱۰ و موقع خوندن رکورد ها از top استفاده میکنم.
SELECT TOP 50 FROM ...
هروقت کاربر نیاز داشت بیشتر از این رو داشته باشه مقدارش رو بیشتر میکنه و یا با کلیک روی check box پشتش این فیلتر رو غیر فعال میکنه.
اگه راه بهتری کسی بلده ممنون میشم راهنمایی کنه.