ورود

View Full Version : خطايcycle or multiple cascade paths در برقراري ارتباط بين جداول



White.Wit
سه شنبه 01 تیر 1389, 13:00 عصر
با سلام خدمت دوستان عزيز.
من در هنگام برقراري ارتباط بين 4 جدول به خطاي زير برخورد مي كنم كه اگه يكي از اين ارتباطات رو از حالت آبشاري خارج كنم ديگه اين مشكل پيش نمياد. اما من ميخوام حتما اين جداول حالت آبشاري درهنگام delete و update وجود داشته باشه . ضمنا تمامي مطالبي كه قبلا دوستان بهش پرداخته بودن رو خوندم اما به جواب سوالم نرسيدم از روش تريگر هم استفاده كردم اما جواب نگرفتم از msdn هم چيزي عايدم نشد.
خواهش مي كنم اگه كسي ميتونه كمكم كنه.
متن خطا

'tbl_dissburse' table saved successfully
'tbl_marrige' table saved successfully
'tbl_diss_marr' table
- Unable to create relationship 'FK_tbl_diss_marr_tbl_marrige'.
Introducing FOREIGN KEY constraint 'FK_tbl_diss_marr_tbl_marrige' on table 'tbl_diss_marr' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint. See previous errors.

شكل خلاصه اي از جداول رو هم بصورت عكس ميتونيد ببينيد.
خواهش ميكنم كمك كنيد....:افسرده::ناراحت:

White.Wit
سه شنبه 01 تیر 1389, 13:02 عصر
ضمنا اگه به محتويات جداول نگاه كنيد متوجه مي شويد كه اصلا چرخه اي وجود نداره و از لحاظ منطقي چرخه اي بوجود نيومده. البته اين بانك تو اكسس مشكلي نداره ولي تو sql server اين مشكل رو داره.
خواهش مي كنم اگه كسي بلده يا منبعي داره معرفي كنه.

محمد سلیم آبادی
سه شنبه 01 تیر 1389, 14:59 عصر
ضمنا اگه به محتويات جداول نگاه كنيد متوجه مي شويد كه اصلا چرخه اي وجود نداره و از لحاظ منطقي چرخه اي بوجود نيومده
سلام،
چرخه ای وجود نداره ولی اگر به پیغام خطا با دقت توجه شود متوجه می شویم که گفته "ممکنه سبب چرخه شود یا چندین مسیر آبشاری (http://support.microsoft.com/kb/321843)بوجود بیاورد"
یعنی وقتی که داده ای از جدول Person حذف شود ممکن است سطرهایی از دو جدول دیگر که به این جدول مرتبط هستند حذف شود و چون جدول چهارم با این دو جدول در ارتباط هست. SQL Server چندین راه برای حذف کردن آبشاری داده ها از جدول چهارم دارد. که این موضوع سبب Multiple Cascade Paths می شود.

برای این مساله فکر نکنم راهی وجود داشته باشه.