PDA

View Full Version : دستورDelete جهت حذف اطلاعات دو جدول که ..



RIG000
جمعه 19 فروردین 1390, 00:53 صبح
مدیران محترم این سوال اگه ربط به پایگاه داره انتقال بدین و حذف نکنین . ممنون میشم . در ضمن اینجا نوشتم چون دوستا قبلا به این مورد برخورد کرد 100 در 100
دستورDelete جهت حذف اطلاعات دو جدول که در هر دوجدول فیلدی رو بطور مثال داریم که کلید هست و به یک اسم و به هم Relationship شده اند . به طور مثال codemelii در جدول1 و codemelli در جدول دو . این جدول ها فیلد های دیگری هم دارند . حالا من تو یه فرم میخام اطلاعا ت مربوط به یک کد ملی مثلا 1010 vرو حذف کنم . مسخام این حذف طوری باشه که هر مقداری که در جدول 2 و جود داره و مربوط به کد ملی هست پاک بشه . من این کد رو این شکلی نوشتم
Delete *
From table1,table3
Where id =
(select id
From table3
Where name="amin")

yosefi_hossein
جمعه 19 فروردین 1390, 01:44 صبح
سلام چرا کلید خارجی نمیذاری و Casecate نمیکنی تو بانک

RIG000
جمعه 19 فروردین 1390, 02:18 صبح
من راستیتش با ایم وارد شما گفتی زیاد آشنا نیستم . بی تعارف کار با بانکم زیاد جالب نیست یادم رفته کلید خارجی اینها رو . من فقط فیلد مورد نظر رو primery key کردم . و Casecate اصلا نمیدونم چیه . الان کاملا" متوجه منظورم شدین؟ من باید طوری بفرستم کد deleteo که هر چی مربوط به اون کد میشه پاک شه .

mmd2009
جمعه 19 فروردین 1390, 03:06 صبح
با سلام.

همونطور که دوستمون گفتن بهترین راه همین Cascade کردن Delete بین دو جدول رابطه ای هستش البته اینم بگم که بر اساس نیاز شما باید Delete یا update رو Cascade کنید مثلا تو بغضی موارد فقط باید Update رو Cascade کرد و بعضی مواقع فقط Cascade رو Cascade کرد و شاید هم هر دو نیاز باشه و شاید هم هر دو نیاز نباشه ، اینو واسه این گفتم که چون اشنایی ندارید واسه همین نرید یهو همه رو Cascade کنید چون عواقب جبران ناپذیری برای شما همراه داره این کار :چشمک:

عکس زیر ( ضمیمه ) رو ببین یک رابطه بین دو جدول هستش که من بر اساس نیاز هر دو رو Cascade کردم.

ببین در این شرایط هر گاه مدیر ( اینجا مثلا مدیر وب سایت ) میاد یک پست رو حذف میکنه دیگه اصلا نیازی به نظرهای اون چست هم نیست و بطور خودکار اطلاعات هم از جدول نظرات پاک میشن.

امیدوارم توضیحات مفید بوده باشه. موفق باشید.

RIG000
جمعه 19 فروردین 1390, 04:17 صبح
عالی بود دوست عزیز