PDA

View Full Version : select های تودر تو



asar_001
جمعه 12 آبان 1385, 02:30 صبح
من مدتیه که با یه مشکلی روبرو شدم
در بعضی از برنامه هام لازمه که از یه select بزرگ تودر تو استفاده کنم که چون معمولا روی شبکه اجرا میشه ایجور select ها سرعت خیلی پایینی داره
من برای این که از این جور select ها استفاده نکنم مجبورم که هر قسمت را در یک dataset بریزم و با یه حلقه for اونها را با هم یکی کنم
که این کار هم خیلی وقت گیره
کسی راه دیگه ای به ذهنش نمیرسه؟؟؟؟؟؟
:متفکر:

Microsoft.net
جمعه 12 آبان 1385, 17:37 عصر
سرعت پایین که میگید صدها علت و صدها روش برای حل کردنش هست چیزی که روشنه اینه که روشی که شما استفاده می کنید راه حل درستی برای این قضیه نیست
من خودم به شخصه از select های تودر تو بر روی سرور هایی با حجم اطلاعات بالا زیاد استفاده کردم و همیشه هم زمان بازگشت معقولی هم گرفتم
به نظر میرسه بانک اطلاعاتی شما ساختار نرمالی نداره همونطور که می دونید آقای آرم استرانگ حداقل سطح نرمال رو برای یک بانک 3NF و سطح مطلوب رو 4NF بیان کردند
از طرف دیگه بهینه سازی در نوشتن Query ها نقش مهمی بازی میکنه
همچنین ایجاد ساز و کارهای لازم مثل ایندکس گزاری مناسب و دقیق - تعریف درست کلید های اصلی و خارجی - تعریف درست ارتباطات داخلی جداول - استفاده از سخت افزار بروز و ... هم خیلی کمک می کنه
سوال شما خیلی کلیه و جواب کلی هم میشه فقط بهش داد .

asar_001
یک شنبه 14 آبان 1385, 09:59 صبح
دیتابیس من استاندارده
مشکلم هم نرمال سازی نیست
گاهی وقتا مثل محاسبه هزینه پروژه مثلا برای کارمندان با فعالیت های مختلف هر کدوم را باید جدا محاسبه کرد
یه راهش اینه که هر کدوم را تو یه select محاسبه کرد و با هم join کرد که تو شبکه سرعتش خیلی پایینه
یه راهش اینه که جدا جدا محاسبه بشن (مثلا با reader) بعد اونا رو با هم ترکیب کرد

Microsoft.net
دوشنبه 15 آبان 1385, 00:42 صبح
اگه بتونی select که واسه این کار نوشتی اینجا بزاری میشه روش کار کرد و بهینش کرد