white fox
سه شنبه 12 اردیبهشت 1385, 11:10 صبح
با سلام...
نمیدونم بخشم رو درست انتخاب کردم یا نه چون سوال بیشتر SQL هست تا ASP.NETی اما بدین خاطر پرسیدم در اینجا که حتما دوستان برنامه نویس به این مشکل بیشتر برخورد کردن.
امیدوارم مدیران بخش اشکالی از این سوال نگیرند.
دوستان عزیز من در اکثر جاهایی که جستجویی انجام دادم در مورد Custom Paging تقریبا 90 درصد اونها راه حلی شبیه به هم داشتند و روش هم این بود که اطلاعات جدولی که میخوایم روش عمل Paging رو انجام بدیم رو قرار میدادند توی یک جدول موقت که یک ستون Identity داشت که باعث میشد هر سطری یک شماره بگیره
حالا بر اساس اون ستون میومدن با گرفتن چند پارامتر تعداد رکورد مربوطه رو از جدول میکشیدن بیرون...
اما مشکلی که اینجا هست اینه که ما باید بدونیم کدوم جداول رو میخوایم باهاش عمل Paging رو انجام بدیم...
حالا فرضا ما میخوایم برای تعداد بیشتری این کار رو انجام بدیم مثلا 6 یا بیشتر...آیا باید برای هر کدوم یک SP جدا بنویسیم؟
من خودم روشی که انجام دادم این بود که دستور SELECT مربوطه رو که در واقع هدف نام جدول هست رو به SP ارسال میکنم و با دستور EXEC یک جدول میسازم و اطلاعات این جدول ارسالی رو داخلش میریزم...
اما خوب نمیشه دیگه اینجا از جدول موقتی استفاده کرد من مجبور شدم یک جدول دائمی بسازم
از طرفی هم چون هر بار ممکنه جدول متفاوتی ارسال بشه نمیشه جدول رو ساختارش رو نگه داشت یعنی از Truncate یا DELETE برای حذف داده ها نمیشه استفاده کرد و حتما باید جدول پاک بشه و با ارسال بعدی ایجاد...
خوب به نظر خودم این روش روش بهینه ای نیست که هر بار که درخواستی از سوی این جداول صورت میگیره جدول مدام پاک و ایجاد بشه...
چون این سایتی که من دارم براش برنامه مینیویسم همین حالا چیزی حدود 200 تا 300 بیننده در روز داره و پیش بینی میکنیم با ساخت سایت جدید و امکاناتش سریعا به روزی 500 نفر به بالا برسه...
شما دوست عزیزی که تجربتون در طراحی بیشتر شما از چه روشی برای حل این مشکل استفاده میکنید؟
آیا بهتره برای هر 6 جدول جدا SP بنویسم؟
از راهنماییتون بی نهایت ممنونم.
نمیدونم بخشم رو درست انتخاب کردم یا نه چون سوال بیشتر SQL هست تا ASP.NETی اما بدین خاطر پرسیدم در اینجا که حتما دوستان برنامه نویس به این مشکل بیشتر برخورد کردن.
امیدوارم مدیران بخش اشکالی از این سوال نگیرند.
دوستان عزیز من در اکثر جاهایی که جستجویی انجام دادم در مورد Custom Paging تقریبا 90 درصد اونها راه حلی شبیه به هم داشتند و روش هم این بود که اطلاعات جدولی که میخوایم روش عمل Paging رو انجام بدیم رو قرار میدادند توی یک جدول موقت که یک ستون Identity داشت که باعث میشد هر سطری یک شماره بگیره
حالا بر اساس اون ستون میومدن با گرفتن چند پارامتر تعداد رکورد مربوطه رو از جدول میکشیدن بیرون...
اما مشکلی که اینجا هست اینه که ما باید بدونیم کدوم جداول رو میخوایم باهاش عمل Paging رو انجام بدیم...
حالا فرضا ما میخوایم برای تعداد بیشتری این کار رو انجام بدیم مثلا 6 یا بیشتر...آیا باید برای هر کدوم یک SP جدا بنویسیم؟
من خودم روشی که انجام دادم این بود که دستور SELECT مربوطه رو که در واقع هدف نام جدول هست رو به SP ارسال میکنم و با دستور EXEC یک جدول میسازم و اطلاعات این جدول ارسالی رو داخلش میریزم...
اما خوب نمیشه دیگه اینجا از جدول موقتی استفاده کرد من مجبور شدم یک جدول دائمی بسازم
از طرفی هم چون هر بار ممکنه جدول متفاوتی ارسال بشه نمیشه جدول رو ساختارش رو نگه داشت یعنی از Truncate یا DELETE برای حذف داده ها نمیشه استفاده کرد و حتما باید جدول پاک بشه و با ارسال بعدی ایجاد...
خوب به نظر خودم این روش روش بهینه ای نیست که هر بار که درخواستی از سوی این جداول صورت میگیره جدول مدام پاک و ایجاد بشه...
چون این سایتی که من دارم براش برنامه مینیویسم همین حالا چیزی حدود 200 تا 300 بیننده در روز داره و پیش بینی میکنیم با ساخت سایت جدید و امکاناتش سریعا به روزی 500 نفر به بالا برسه...
شما دوست عزیزی که تجربتون در طراحی بیشتر شما از چه روشی برای حل این مشکل استفاده میکنید؟
آیا بهتره برای هر 6 جدول جدا SP بنویسم؟
از راهنماییتون بی نهایت ممنونم.