ورود

View Full Version : ساخت یک ستون بدون مقادیر تکراری



Arashdn
چهارشنبه 22 خرداد 1392, 16:47 عصر
سلام دوستان
- تو SQL Server 2008 در حالت دیزاین چطور میشه یه کاری کرد که مقادیر یه ستون تکراری نگیره؟ یا به اصطلاح Unique باشه ؟ (بدون تبدیل اون به primary key)
- حالا این primary key چی هست و به چه دردی میخوره؟
- این خاصیت Is Identity در خواص یک ستون چه کاربردی داره؟
ممنون

Arashdn
شنبه 25 خرداد 1392, 22:04 عصر
یعنی هیچ کس حاضر نیست راهنمایی کنه؟

ali_md110
یک شنبه 26 خرداد 1392, 14:50 عصر
primary key کلید یکتا نام دارد برای حفظ جامعیت بانک استفاده میشه بدین معنا که هر رکورد بانک اطلاعاتی یک کلید مخصوص خود باید داشته باشد تا با رکوردهای دیگر متمایز شود
معمولا حذف رکورد یا ویرایش رکورد براساس همین کلید یکتا صورت میگیره یا وقتی دو جدول به هم رابطه یک به چند دارند از همین کلید جهت مشخص شدن رکوردهای فرزند این کلید اصلی در جدول دوم استفاده میشود

ببینید دوست من فرض کنید یک جدول اشخاص دارید که دارای 3 رکورد باشه:
رکوردها:
رکورد اول : کد شخص =1 ,نام =علی , تلفن =087878
رکورد دوم : کد شخص=2 ,نام =حسین, تلفن =986969
رکورد سوم : کد شخص=3 ,نام =محمود, تلفن =87858

اگر جدول دومی داشه باشیم که رکوردهای سفارشات مشتری ذخیره بکنه باید جدول اشخاص به جدول سفارشات یک رابطه برقرار بکنه تا مشخص بشه سفارشات در جدول دوم به کدام مشتری یا شخص در جدول اشخاص مربوط میشه

جدول دوم سفارشات:

کد شخص=1, نام کالا=هارددیسک
کد شخص=1,نام کالا=سی پی یو
کد شخص=2, نام کالا هارددیسک

خب در این مثال شخص 1 دو سفارش داره و شخص 2 یک سفارش

کلید Is Identity میاد به مقدار قبلی عددی اضافه میکنه در واقع Auto numberهست

که با تنظیم identity incement گام افزایش تغییر میکنه

و Identity seed شروع فیلد Auto مشخص میکنه

میتونید از همین Is Identity برای جلوگیری از اعداد غیر تکراری استفاده کنید یا برای فیلدتون فرمول نویسی کنید