PDA

View Full Version : ایجاد رابطه یک به یک



ghasem110deh
شنبه 17 مرداد 1394, 10:16 صبح
سلام به همه ...
دوستان توی عکس ضمیمه دو تا مورد رو شماره زدم ...
1- جدول با خودش رابطه پیدا کرده !!؟
(چطور اینکار رو میکنن و به چه دردی میخوره) ... منظورم هدف این کاره

2- چطور رابطه یک به یک ایجاد کنم ؟ (من هرچی رابطه میزنم فقط یک به چند میده)

ممنون :)

SabaSabouhi
شنبه 17 مرداد 1394, 13:03 عصر
سلام
1. معمولاً برای تولید ساختار درختی از این نوع رابطه استفاده می‌شه. شما یک ستون معمولاً به نام ParentId
ایجاد می‌کنی و اون رو foreign key به کلید اصلی همین جدول می‌کنی. حتماً هم باید allow null باشه ( برای گره ریشه )
که احتمالاً تو این دیاگرام همون ستون pid هست ( امان از این نام‌گذاری‌های بد )
2. برای ساخت ارتباط یک به یک کافیه foreign key شما اندیس یکتا داشته باشه. این هم چیز عجیبی نیست
مورد استفاده زیاد داره. مثلاً فرض کن یک جدول مرجع داری به نام کالا که مشخصه‌های عمومی کالاها توش هستن.
یک جدول هم داری برای کالاهای فاسد شدنی، که تو این جدول اطلاعات خاصی مثل تاریخ انقضا و نحوه‌ی برخورد ( برگشت به
فروشنده یا نابودی کالا یا . . . ) رو توش نگهداری می‌کنی. سطرهای این جدول فقط برای برخی از کالاها وجود داره، اما برای
هر کالا فقط و فقط یک سطر اینجا داریم. پس، کافیه ستون Id رو کلید اصلی کنی ولی Identity نباشه، ضمن این که همین
ستون کلید خارجی می‌شه برای کلید اصلی جدول کالاها. و برای یکتا بودن هم یک اندیس یکتا روی این ستون ایجاد می‌کنی.

به همین سادگی

صبا صبوحی