PDA

View Full Version : مشکل با فیلد از نوع identity



oliya24
سه شنبه 04 تیر 1392, 14:52 عصر
سلام و خسته نباشید دوستان من یک فیلد از نوع identity داشتم که مقدار های اون رو برابر 1و1 قرار دادم ولی الان که فیلدهای دیگر رو پر میکنم میبینم از 2001 و 2003و4401و....مثلا میزنه مشکل چیست؟

hossein_h62
سه شنبه 04 تیر 1392, 15:05 عصر
سلام
احیانا دیتا توی این جدول درج و حذف نکردین ؟

oliya24
سه شنبه 04 تیر 1392, 15:36 عصر
چرا کردم این کار رو

m.webgard
سه شنبه 04 تیر 1392, 19:25 عصر
چرا کردم این کار رو
سلام. دوست عزیز وقتی در جدولی که درونش فیلدی از نوع identity دارید رکوردهایی رو درج یا حذف میکنید، به مراتب مقدار identity هم افزایش پیدا میکنه و دیگه با حذف رکوردها مقدار identity کم نمیشه
مثلا شما 5 تا رکورد اضافه کردید و مقدار identity در پنجمین رکورد برابر 5 میشه
حالا اگه این رکورد ها رو حذف کنید و دوباره رکوردی جدید وارد کنید، identity از 6 شروع میشه نه از 1
موفق باشید:لبخندساده:

in_chand_nafar
سه شنبه 04 تیر 1392, 23:36 عصر
برای کسب اطلاعات بیشتر در مورد Identity به این مقالات مراجعه کنید
Identity و مباحث مربوط به آن (قسمت اول) - آشنایی با Identity
(http://www.nikamooz.com/%D9%85%D9%82%D8%A7%D9%84%D8%A7%D8%AA-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86/sql-server-vs-net/sql-server-design/97-%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%D8%A8%D8%A7-identity-%D8%AF%D8%B1-sql-server.html)
Identity و مباحث مربوطه (قسمت دوم) نحوه بدست آوردن مقادیر Identity (http://www.nikamooz.com/%D9%85%D9%82%D8%A7%D9%84%D8%A7%D8%AA-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86/sql-server-vs-net/sql-server-design/101-%D9%86%D8%AD%D9%88%D9%87-%D8%A8%D8%AF%D8%B3%D8%AA-%D8%A2%D9%88%D8%B1%D8%AF%D9%86-%D9%85%D9%82%D8%A7%D8%AF%DB%8C%D8%B1-identity.html)

ghazal_mohammady
جمعه 20 تیر 1393, 22:54 عصر
سلام. دوست عزیز وقتی در جدولی که درونش فیلدی از نوع identity دارید رکوردهایی رو درج یا حذف میکنید، به مراتب مقدار identity هم افزایش پیدا میکنه و دیگه با حذف رکوردها مقدار identity کم نمیشه
مثلا شما 5 تا رکورد اضافه کردید و مقدار identity در پنجمین رکورد برابر 5 میشه
حالا اگه این رکورد ها رو حذف کنید و دوباره رکوردی جدید وارد کنید، identity از 6 شروع میشه نه از 1
موفق باشید:لبخندساده:
عرض سلام و ادب
خب این مشکل رو چطور میشه رفع کرد؟

Reza_Yarahmadi
شنبه 21 تیر 1393, 14:57 عصر
سلام و خسته نباشید دوستان من یک فیلد از نوع identity داشتم که مقدار های اون رو برابر 1و1 قرار دادم ولی الان که فیلدهای دیگر رو پر میکنم میبینم از 2001 و 2003و4401و....مثلا میزنه مشکل چیست؟

این مشکل توی نسخه 2012 وجود داره و بعد از هر ریست سرویس SQL Server پیش میاد که اونم بدلیل تغییر نحوه تعیین Identity توی این نسخه است.(در این رابطه جستجو کنید)
راه حل زیر رو امتحان کنید ببینید درست میشه یا نه.
SQL Server Configuration Manager رو باز کنید.
در بخش SQL Server Services روی سرویس اصلی instance مورد نظرتون کلیک کنید (پیش فرض (SQL Server(MSSQLSERVER) و Properties بگیرید.
در تب Startup Parameters و در قسمت specify a startup parameter مقدار "T272-" رو وارد کنید روی دکمه Add کلیک کنید و OK
سرویس SQL Server رو ریست کنید.

s.karim
سه شنبه 24 تیر 1393, 10:31 صبح
این کوِِئری رو اجرا کنید:

DBCC CHECKIDENT('TableName', RESEED, 1)


در این صورت Identity ریست خواهد شد و از "یک" مقدار دهی می شود.


اگر به جای عدد یک در این کوئری مثلا عدد 5 را قرار دهید. دیتاهایی که اضافه می کنید از 5 شروع می شود و بالا میرود.

blackwidow64
چهارشنبه 15 مرداد 1393, 10:41 صبح
از DBCC Reseed میتونید استفاده کنید