PDA

View Full Version : مبتدی: سوال درباره ی identity کردن یه ستون؟؟؟



arash ghafori
دوشنبه 15 خرداد 1391, 00:34 صبح
با سلام.

وقتی مقدار یه ستونو identity میکنیم ، مقدارش ترتیبی میشه:

1
2
3
4

حالا اگه من بانکمو کلا Remove کنم بعد بخوام فیلد بعدی رو Add کنم از مقدار 5 شروع میشه.

میشه یه کاری کرد که از 1 شروع شه ؟؟؟

ممنون.

Mahmoud.Afrad
دوشنبه 15 خرداد 1391, 00:42 صبح
بعد از خالی شدن جدول مقدار seed ستونی که identity هست رو با دستور sql زیر دوباره ست کنید
DBCC CHECKIDENT
(
table_name
[ , { NORESEED | { RESEED [ , new_reseed_value ] } } ]
)
[ WITH NO_INFOMSGS ]مثال
DBCC CHECKIDENT (table_name , reseed , 0)که مقادیر ستونی از جدول که identity باشه رو دوباره از 1 شروع میکنه.

arash ghafori
دوشنبه 15 خرداد 1391, 00:55 صبح
بعد اگه من فقط مقدار سطر 3 رو Remove کنم چی ؟
اونو هم میشه به حالت عادی برگردوند؟

Mahmoud.Afrad
دوشنبه 15 خرداد 1391, 01:15 صبح
پست 2 را اصلاح کردم.(نقطه شروع یا همون seed باید از صفر شروع بشه تا مقادیر identity از 1 مقدار بگیرند)

به شرطی که از سه به بعد خالی باشه بله میشه
DBCC CHECKIDENT (tbl , reseed , 2)اما اگر سطر چهارم و ... پر باشند برای اینزرت های بعدی خطا رخ خواهد داد چون بعد از پر کردن سطر سه به سطر چهار و ... میرسه که از قبل پر هستند. پس برای حالتی که از اون سطر به بعد خالی باشه میتونید استفاده کنید. نقطه شروع ( seed ) رو هم یکی کمتر باید بدید.

arash ghafori
دوشنبه 15 خرداد 1391, 01:45 صبح
بازم ممنون بابت راهنماییتون استاد افراد.