PDA

View Full Version : روابط چند به چند



s.Jabbari
دوشنبه 15 شهریور 1389, 22:08 عصر
سلام
آیا پیاده سازی روابط چند به چند در پایگاه اشتباه هست؟

بهزادصادقی
دوشنبه 15 شهریور 1389, 22:32 عصر
نه. بستگی دارد نیاز شما چیست. در خیلی موارد، بدون استفاده از یک رابطه چند به چند نمی شود بخشی از مسائل دنیای بیرونی را مدل سازی کرد.

بهزادصادقی
سه شنبه 16 شهریور 1389, 22:23 عصر
فرض کنید ما داریم برای یک کتابخانه یک سیستم مدیریت اطلاعات طراحی می کنیم. دو تا موجودیت که حتما در سیستم خویش باید آنها را پردازش کنیم عبارتند از اعضای کتابخانه و کتاب های کتابخانه. بدون شک، ما یک جدول اعضا نیاز خواهیم داشت و یک جدول کتاب.

حال، رابطه بین این دو موجودیت چیست؟

در دنیای واقعی، ما می دانیم که هر عضو می تواند کتاب های مختلفی را قرض بگیرد. و هر کتاب می تواند به وسیله چند عضو مختلف قرض گرفته شود. پس رابطه بین جدول اعضای ما و جدول کتاب های ما جند به چند است. هر عضو می تواند با چند کتاب رابطه «فرض گرفتن» داشته باشد، و هر کتاب می تواند با چند عضو رابطه عکس آن، بعنی «قرض گرفته شدن» را داشته باشد.

s.Jabbari
سه شنبه 16 شهریور 1389, 23:31 عصر
من از یکی از اساتید شنیدم که بجای استفاده از یک رابطه چند به چند با استفاده از یک جدول میانی می توانید از 2 رابطه یک به چند استفاده کنید
آیا این کار همیشه امکان پذیر هست؟

بهزادصادقی
سه شنبه 16 شهریور 1389, 23:34 عصر
می شه یک مثال بزنید؟ یعنی اسم جداول و ستون ها را بیاورید و غیره تا من ببینم دقیقا منظور شما (یا استاد شما) چه می باشد؟

sia_2007
چهارشنبه 17 شهریور 1389, 01:03 صبح
دم استادتون گرم
اصلا امکان پیاده سازی روابط چند به چند وجود نداره.
و برای این کار همیشه از یه جدول واسط استفاده میشه؛
مثلا رابطه جانباز با مصدومیت
هر جانبازی؛ چند نوع مصدومیت داره
و هر مصدومیتی چند تا جانباز
اینها رو تو یه جدول واسط نگه میداریم که هر ردیفش ID جانباز و مصدومیتش رو داره.
جدول واسط یکی از زیباترین جاها برای ذخیره سازی دیتا هست.
مثلا تو همین میتونیم تاریخ مصدومیت رو هم ذخیره کنیم.