PDA

View Full Version : شروع از عدد يك در بانك



hessam abjam
جمعه 09 بهمن 1388, 22:22 عصر
:متفکر: چگونه مي توان به ترتيب در كليد اصلي شروع كرد و اگر ركوردي حذف شد ركورد جديد جايگزين قبلي شود بدون اينكه ترتيب عددي به هم بخورد؟

AminSobati
شنبه 10 بهمن 1388, 20:50 عصر
میتونین تولید اعداد رو به فیلد Identity نسپارین. در یک جدول، بیشترین ID که برای اون جدول تولید شده رو نگهدارین و همیشه برای درج رکورد جدید، یکی بهش اضافه کنین. موقع حذف، ID رکورد حذف شده رو جایی انبار کنین و موقع Insert، اول انبار رو چک کنین که اگر ID آزاد وجود داره ازش استفاده کنین و در غیر اینصورت از جایی که بالاترین ID رو ذخیره کرده بودین، یک ID جدید تولید کنین.
ولی نکته مهم این هست که با رعایت Lockهای مناسب، مشکلات همزمانی کاربرها رو مدیریت کنین تا دو نفر همزمان ID تکراری بدست نیارن