PDA

View Full Version : توضيح relationships



r_mehrizi
سه شنبه 13 اسفند 1387, 09:33 صبح
relationships در sql 2005 بعد از اينكه جداول را ساختيم ساخته مي شود
در قسمت insert and update specification گزينه هاي noaction ,cascade,set null و.. چيه؟
حتما براي نوشتن پروژه تنظيمات relationships را بايد انجام داد؟

EffatBandehlou
سه شنبه 13 اسفند 1387, 10:16 صبح
دوست عزيز:
Set Null يعني مقدار اين فيلد برابر Null شود يا به عبارتي امكان پذيرفتن Null براي اين فيلد فراهم است
CaseCade Delete , Casecade Update به اين معناست كه اگر از جدول master ما يك ركورد حذف و به روز شد ركورد يا ركوردهاي معادل آن در جدول Detail هم حذف يا به روز شود.
Noaction يعني اين در صورت حذف يا به روز شدن ركورد در جدول Master جدول Detail هيچ تغييري نكند

r_mehrizi
سه شنبه 13 اسفند 1387, 10:38 صبح
منظور شما از جدول master جدولي هستش كه كليد اصلي داره و جدول detail كليد خارجي به اون كليد اصلي داره؟
چطوري ميشه relationships را در sql 2005 ايجاد كرد؟
enforce for replication ,enforce foreign key constraintچيه؟

EffatBandehlou
سه شنبه 13 اسفند 1387, 10:42 صبح
بله دقيقاً همينطوره

EffatBandehlou
سه شنبه 13 اسفند 1387, 10:51 صبح
از طريق محيط design و از طريق Properties ميشه اينو تعريف كرد.يعني بگيد فيلد 1 از جدول Master با فيلد x از جدول Detail با هم رابطه دارند

r_mehrizi
سه شنبه 13 اسفند 1387, 11:05 صبح
حتما رابطه ها را بايد مشخص كرد؟
منظور شما اين هستش كه اگه ركوردي در جدول با كليد اصلي حذف شد اطلاعات معادل با اون در جدول با كليد خارجي چه عملي بر روي اون انجام بشه؟ لازمه كه هميشه عمل cascade انجام بشه؟كي از noaction استفاده ميشه؟
چطور ميشه فهميد رابطه چند به چند است؟

EffatBandehlou
سه شنبه 13 اسفند 1387, 11:44 صبح
دوست عزيز اگه دو جدول با هم رابطه دارند (به شكل منطقي) بهتره كه به شكل ديتا بيسي هم رابطه داشته باشند ولو اينكه ميشه براشون رابطه تعريف نكرد.
شما مي تونيد Cascade نكنيد اين يك امكان خوب هست كه در اختيار شما قرارداده ميشه با اين امكان اگه كسي بخواد تو جدول Detail اطلاعاتي وارد كنه كه از جدول Master نباشه بهش پيغام خطا ميده.پس اگه دوست داشتين بزارين و اگه دوست نداشتين نزارين.
NoCation عمل Casecaade ro anjam nemideh
شما بايد براي ديتا بيس تعريف كنيد كه رابطه اي وجود داره اون كه خودش تشخيص نميده رابطه چند به چنده