زمان کنونی: 1395-11-05, 07:37 ب.ظ
خوش آمدید، مهمان! (ورودثبت نام)

ارسال پاسخ 
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
اشتراک موضوع در Digg delsios Reddit Facebook Twitter StumbleUpon
ایجاد فیلد IDentity در جدول
نویسنده پیام
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:305
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1000
سپاس شده 1346 بار در 314 ارسال

ارسال: #1
ایجاد فیلد IDentity در جدول
ایجاد فیلد IDentity در جدول
در بعضی از جداول دیتابیس ،هنگام Insert کردن یک رکورد جدید، گاهی اوقات لازم هست یکی از فیلدها ( از نوع عددی INT ) به طور خودکار مقداردهی شوند . که با این کار در اصطلاح به این فیلد خاصیت Identity داده اید.
به عنوان مثال جدولی رو در نظر بگیرید ، که لیست کارکنان یک سازمان رو در خودش ذخیره می کنه
در این فیلد برای اینکه به هر نفر یک شناسه اختصاص بدهید که این شناسه در دیتابیس به طور خودکار تعیین و در فیلد مورد نظر درج شود ، شما علاوه بر اینکه باید این فیلد رو به عنوان PK انتخاب کنید تا اون شناسه یکتا باشد، باید خاصیت Identity این فیلد رو هم برابر با Yes قرار بدهید تا مقدار این فیلد در موقع ثبت نام کارمند جدید به طور خودکار مقدار دهی شود.
نکته1 : دقت داشته باشید فقط فیلد هایی رو می تونید Identity کنید که از نوع داده عددی INT باشند.

مراحل کار:
1_ بعد از اینکه وارد نرم افزار SQL Managment Studio شدید ، دیتابیستون رو باز کنید و بعد پوشه Table رو باز کنید , و روی جدولی که می خواهید ویرایش کنید راست کلیک کنید و سپس گزینه Design رو انتخاب کنید تا بتونید تغییراتی رو در جدولی که قبلا ساختید، ایجاد کنید.
1_ فیلدی که می خواهید Identity شود رو انتخاب کنید
2_ در قسمت column Properties ( در زیر لیست فیلدها ) مطابق تصویر زیر ، بگردید و گزینه ی "Identity Specification" رو پیدا کنید و روی علامت مثبت کنارش کلیک کنید تا زیرشاخه های اون باز بشه ( تصویر زیر).


[تصویر: do.php?imgf=137236287772821.jpg] 


توضیحات کادر قرمز رنگ در تصویر بالا :
(Is Identity) : اگر مقدار این گزینه Yes باشد ، بنابراین فیلدی که انتخاب کردید ، در زمان اضافه کردن و ایجاد کردن یک رکورد جدید به جدول ، به طور خودکار مقدار دهی می شود.
Identity Increment : این گزینه مشخص می کند که مقدار فیلد چند تایی افزایش پیدا کند، به طور پیش فرض مقدار آن یک است و می تواند اعداد مثبت و همین طور منفی نیز بگیرد. مثلا اگه مقدارش 2 باشه ، وقتی رکوردی اضافه می کنید ، اولین رکورد در این فیلد مقدار عدد 2 ذخیره میشه و در رکورد بعدی ، یعنی دومین رکورد مقدار عدد 4 در این فیلد ذخیره میشه.

Identity Seed : مشخص می کند مقدار این فیلد ( در اولین رکورد ) از چه عددی شروع شود، به طور پیش فرض از عدد 1 شروع می شود ولی می توان از اعداد منفی هم برای شروع فیلد Identity استفاده کرد و همین طور هر عدد مثبتی.
نکته 2 :اگر فیلدی رو خاصیت Identity به اون بدید ، در برنامه نویسی نباید این فیلد رو به طور دستی مقدار دهی کنید ، چون Sql خودش به طور خودکار در موقع اینزرت کردن رکورد این فیلد رو مقدار دهی میکنه ، و اگه بخواهید به طور عادی این فیلد رو مقدار دهی کنید ، در زمان اجرای برنامه با خطا مواجه میشید . البته راهی برای مقدار دهی دستی این نوع فیلدها وجود داره که استفاده از اون روش توصیه نمیشه .


موفق و پیروز باشید.















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
1392-04-07 12:26 ق.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط omrani.meysam63 ، sajednet ، nahid
ارسال پاسخ 


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  اختصاص مقدار پیشفرض به فیلد دیتابیس SQL Reza.Heydari 0 2,238 1392-04-07 12:35 ق.ظ
آخرین ارسال: Reza.Heydari

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

دوستان ما