ورود

View Full Version : سوال: نحوه بازگرداندن مقدار فیلد auto increment به 1؟



khoonsard
پنج شنبه 14 مرداد 1389, 11:20 صبح
با سلام .
:لبخندساده:
نحوه بازگرداندن مقدار فیلد auto increment به 1 بعد از خالی کردن جدول چگونه انجام می شود ؟

mostafa_zainy
پنج شنبه 14 مرداد 1389, 12:16 عصر
سلام
مییتونی از دستور زیر استفاده کنی


(DBCC CHECKIDENT (" Table Name ", RESEED, Start Value


درقسمت Table Name نام جدولی که میخوای IDENTITY اونو ریست کنی قرار بده
و بجای Start Value مقدار شروع IDENTITY رو قرار بده (مثلا میتونی بجای Start Value عدد 1 رو قرار بدی)

توجه کن که این دستور رو بعد از حذف تمامی رکوردهای یک جدول اجرا کن (هنگامی که جدول خالی شد)

موفق باشید

حمیدرضاصادقیان
پنج شنبه 14 مرداد 1389, 16:50 عصر
سلام.اگر به جای دستور Delete from tablename نیز از دستور Truncate استفاده کنید مقدار indentity صفر خواهد شد.
موفق باشید

محمد سلیم آبادی
جمعه 15 مرداد 1389, 13:03 عصر
همانطوری که در پست قبلی اشاره شد با دستور truncate table مقدار ستون identity ریست خواهد شد.
البته از این دستور زمانی که کلید (های) خارجی وجود داشته باشه که به این جدول ارجاع کرده باشه نمی تونید استفاده کنید.
مثلا اگر توسط جدول درس-دانشجو به جدول دانشجو ارجاع داده شده باشه نمی تونیم جدول دانشجو را truncate کنیم.
یا به عبارت ساده تر اگر در یک relationship جدول ما Parent/Referenced باشه قابل truncate کردن نیست.
http://msdn.microsoft.com/en-us/library/aa260621(SQL.80).aspx