ورود

View Full Version : مشکل در Relation



masoodp666
جمعه 24 اسفند 1386, 22:22 عصر
سلام
من دو تا جدول دارم که کلید اصلی هر کدومشون از چند تا فیلد تشکیل شده و در عین حال یه فیلد از کلید اصلی هر دو جدول مشترکه.
مثلا کلید اصلی یکی A , B و اون یکی A , B , C

حالا من میخوام Relation بین یکی از فیلدهای اونا رو برقرار کنم مثلا B فقط به دلیل اینکه در صورت تغییرات در فیلد مادر، تغییرات در فیلد فرزند هم انجام بشه و همچنین موجودیت رو هم چک کنه. باید چه کار کنم ؟
چون کلید اصلی هر دو جدول چندتاییه به راحتی این کار انجام نمیشه. SQL گیر میده.

masoodp666
شنبه 25 اسفند 1386, 20:53 عصر
آقایون ، خانومها یکی یه حالی به سوال ما بده !! Tanx

Amir_Safideh
شنبه 25 اسفند 1386, 21:50 عصر
والا من هر چی سعی کردم نفهمیدم که منظورتون دقیقا چیه و جدولهات چه جوری باید با هم ارتباط داشته باشن . با این توضیحات فکر نمیکنم بتونی جواب بگیری . بهتره کامل جدولهات و کلیدهاش رو شرح بدی.
آیا اصلا طریقه برقرار کردن ارتباط رو نمیدوید یا اینکه در هنگام ارتباط Error میگیرید ؟

masoodp666
یک شنبه 11 فروردین 1387, 16:50 عصر
مساله رو فهمیدم.
وقتی دوتا جدول کلیدهای اصلی شون مرکبه و یه فیلد هم توی اونها مشترکه برای ارتباط FK باید تمام فیلدهای کلید اصلی یه جدولو به اون یکی ارتباط داد (اگه وجود نداشته باشه باید بوجود آورد)

مثلا در مثالی که زدم نمیشه A , B رو فقط به A , B جدوله دیگه ارتباط داد چون در صورت تغییر این دو فیلد در جدول اول SQL نمی تونه رکورد مورد نظر مشابه اون رو در جدول دوم تشخیص بده چون فیلد C هم جزو کلید جدول دوم هست بنابراین جدول دوم میتونه چند رکورد با دقیقا همون ترتیب A , B در جدول اول داشته باشه.

جدول 1 === جدول 2

A B C ===== A B

1 1 2 ===== 1 1
1 1 3 ===== 1 2
1 1 4 ===== 1 3