ورود

View Full Version : مرتب سازی AutoNumber



moh3en_f1
جمعه 10 اردیبهشت 1389, 17:41 عصر
با سلام خدمت شما دوستان گرامی

من توی بانکم فیلدی به اسم AutoNumber دارم حالا من میخوام یه Queriy یا هر چیز دیگه درست کنم که AutoNumber ریستارت بشه

وقتی توی جدول هیچ رکوردی ندارم و همه ی رکوردها حذف شده وقتی Compact and Repair رو میزنم مشکل حل میشه

اما وقتی رکورد توش هست مشکل حل نمیشه

مثلاً من AutoNumber رو از 1 تا 10 وارد کردم بعدش شماره های 4 و 6 رو پاک کردم
حالا میخوام مرتب سازی انجام بشه و AutoNumber از 1 تا 8 باشه

از دوستان خواهشمندم هر کی هر راهی بلده بگه

من میخوام از وبی یه دکمه بزارم هر موقع کلیک کرد AutoNumber ریستارت بشه و فاصله های بینشون به ترتیب بشه :عصبانی++:

من چند تا سرچ کردم اما چیزی پیدا نکردم که مشکلم رو حل کنه
بزرگواران ببخشن اگه مطلب تکراری هستش


با تشکر فراوان از شما

ali682344
جمعه 10 اردیبهشت 1389, 20:02 عصر
با سلام
من هم مشکل شما رو داشتم راه حل منطقی براش پیدا نشد
ولی برای حلش اومدم فیلد رو به صورت عددی انتخاب کردم و خودم به اون مقدار اضافه می کردم و هر فقط رکوردی حذف میشد مجبور به استفاده از حلقه برای پر کردن رکوردهای اون فیلد میشدم

حالا اگه راهی باشه خوب....:متفکر:

moh3en_f1
جمعه 10 اردیبهشت 1389, 20:29 عصر
ولي من يه راه منطقي ميخوام

در ضمن من متوجه نشدم شما چه جوري مشكلتون رو حل كردين
من فقط ميخوام سيستم به طور اتوماتيك يه سري شماره رو وارد كنه ( بر حسب نيازها - مثلا از 1000 شروع بشه ) بعدش هر موقع مرتب سازي رو زدم هم ركوردها بر اساس اين مرتب بشن يعني شماره ها با هم جا به جا شن و فضاي خالي رو از بين ببرن

دوستان اگه راهي به درد بخور دارين سورسش رو بزارين

ممنون و متشكر

a_mohammadi_m
یک شنبه 02 خرداد 1389, 11:51 صبح
با سلام
اصولا هدف از فيلد AutoNumber بدست آوردن مقدارهاي غير تكراري در فيلد مورد نظره
شما اگه ميخواهيد كه يك فيلد ترتيب داشته باشيد و هر موقع دلتون خواست اون رو دوباره بازسازي و مرتب كنيد اين نوع فيلد به دردتون نمي خوره و بايد خودتون نسبت به توليد و نگهداري اعداد ترتيبي در فيلد اقدام كنيد كه كار عاقلانه اي نسيت چون نمي تونيد ازش بعنوان فيلد كليد استفاده كنيد و بعضي موقعها اشتباهاتي پيش مياد
پيشنهاد ميكنم يك فيلد اتوماتيك جهت كليد و يك فيلد ديگر براي اعداد ترتيبي با هم استفاده كنيد و تو كار ديتابيس دخالت نكيند و بگذاريد خودش فيلد اتوماتيك رو مديريت كنه شماه هم كار خودتون رو انجام بديد
معمولا فيلد اتوماتيك جهت رفرنس ركوردها بكار ميره