View Full Version : ارتباط مستقیم کلید اصلی و کلید خارجی
mehdiba3
دوشنبه 07 مرداد 1392, 00:51 صبح
سلام.
اگه جد.لی بنام student داشته باشیم که شامل شماره دانشجویی نام و ........... باشه و
یک جدول بنام sabtenam داشته باشیم که شامل شماره ثبتنام کلید اصلی و شماره دانشجو نام دانشجو نام خانوادگی باشه و کلید خارجی شماره داشنجویی باشه حالا سوالم اینه که در برنامه مثل شی شارپ اگه برای مثال در جدول دانشجو ، دانشجویی رو حذف کنیم میخوام مستقیم در جدول ثبتنام هم خود به خود تمام مشخصات آن رکورددانشجو حذف بشه.
بنظرتون جیکار کنم که این اتفاق بیفته؟
محمد سلیم آبادی
دوشنبه 07 مرداد 1392, 01:39 صبح
سلام،
چرا در جدول ثبت نام مجددا خصیصه های جدول دانشجو (مثل نام نام خانوادگی) را قرار دادین؟ این کار کاملا اشتباه است. چرا که مثلا وقتی مشخصات دانشجو در جدول دانجشو تغییر میکنه شما ناچارین جدول ثبت نام را نیز ویرایش کنید...
شما خصیصه ON DELETE را روی CASCADE تنظیم کنید زمانی که یک دانشجو از جدول دانشجو حذف میشه سطر متناظر آن در جدول ثبت نام نیز حذف خواهد شد.
نیازی به کدنویسی در #C ندارد. در SQL Server Management Studio روی Node جدول ثبت نام راست کلیک کرده و Design را انتخاب کنید سپس روی کلید خارج راست کلیک کرده و در قسمت Relationship در بخش Delete and Update Specific رفته و Delete Rule را روی Cascade تنظیم کنید.
mehdiba3
دوشنبه 07 مرداد 1392, 20:56 عصر
با کاری که شما گفتین مشکلم حل شد ولی 1000 مشکل دیگه سر راهم قرار گرفته. امیدوارم بتونین راهنماییم کنید.در فرمی که در پایین مشاهده میکنید من فقط برای نشان دادن ظاهری مشخصات دانشجو رو نشون میدم و فقط فیلد کد ملی رو ذخیره میکنم. ولی برای فیلد ترم گروه درسی و نام درس و استاد باز میخوام فقط به صورت ظاهری تو فرم برای کاربر این اطلاعات نمایش داده بشه و فقط کلید خارجی اونا مثل کد درس و کد گروه درسی و کد استاد و .... تو جدول ثبت نام ذخیره شه. مشل من الان اینجاست چیکار کنم که با زدن دکمه اضافه( رو فرم هستش) بتونم بدون نمایش کلید خارجی فیلداییی که گفتم اونا رو ثبت کنم؟ خیلی برام مهمه که این فیلدا در فرم نمایش داده نشند و مخفی باشند چون اگه قرار باشه نمایش داده بشند فرم بسیار شلوغ میشه و اصلا لزومی نداره که اپراتور بدون کد استاد چیه یا کد گروه درسی چیه یا کد درس چیه. اون فقط با اسمشون کار داره و با اعداد و ارقاک کاری نداره. پس حتما یک راهی برای این وجو داره که من بتونم کلید خارجی رو که نمایش داده نشده ذخیره کنم. راهش چیه؟ ممنون
در فرم ثبت نام داشنجو برای دروس 108124
mehdiba3
سه شنبه 08 مرداد 1392, 10:04 صبح
کسی نیست کمکم کنه؟ من به شدت ناراحتم و نمیدونم چیکار کنم
mehdiba3
سه شنبه 08 مرداد 1392, 23:10 عصر
کسییییییییییییی نییییییییییییست؟؟؟؟؟؟؟؟؟؟ ؟؟؟
مهدی هادیان2
چهارشنبه 09 مرداد 1392, 03:48 صبح
بسم الله الرحمن الرحیم
با سلام
این مطالبی که فرمودید ربطی به این تالار نداره و ان شاالله به راحتی می تونید در تالار C# مسائلتون رو مطرح کنید؛ دوستان بسیار فعالی داره.
مشل من الان اینجاست چیکار کنم که با زدن دکمه اضافه( رو فرم هستش) بتونم بدون نمایش کلید خارجی فیلداییی که گفتم اونا رو ثبت کنم؟ خیلی برام مهمه که این فیلدا در فرم نمایش داده نشند و مخفی باشند چون اگه قرار باشه نمایش داده بشند فرم بسیار شلوغ میشه و اصلا لزومی نداره که اپراتور بدون کد استاد چیه یا کد گروه درسی چیه یا کد درس چیه. اون فقط با اسمشون کار داره و با اعداد و ارقاک کاری نداره. پس حتما یک راهی برای این وجو داره که من بتونم کلید خارجی رو که نمایش داده نشده ذخیره کنم. راهش چیه؟
گروه درسی و نام درس و ترم داخل کامبو قرار دارند؛ کامبو 2 ویژگی displayMember,ValueMember دارد:
DisplayMember اون مقداری که دیده میشود؛ مثلا برای نام درس پایگاه داده و شما با استفاده از تکه کدی می توانید پراپرتی ValueMember رو برای کد درس ست کنید.
در مورد استاد هم باید نام استاد رو در پایگاه دادتون سرچ کنید و کد اون رو دریافت کنید.
موفق باشید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.