View Full Version : حذف فرزندها در TreeView
مطهر
سه شنبه 19 اردیبهشت 1385, 16:35 عصر
با سلام
موقعی که یک Node را انتخاب می کنیم . می خواهیم تمام فرزنداش پاک بشه.
چطور؟؟
ممنونم
hpx
سه شنبه 19 اردیبهشت 1385, 21:35 عصر
به ساختار فعلی table مربوطه بستگی داره
قاعدتا Id,parent Id داری پس کافیه id این node رو داشته باشی و هر رکوردی که parent id اش با این id برابره بزنی delete کنی
مطهر
چهارشنبه 20 اردیبهشت 1385, 09:16 صبح
بله ساختار جدولم همونه
یه تابع نوشتم که پدذان گره را بدست می اره. حالا باید یه تابع بنویسم که فرزندان گره را بدست بیاره و اونارا پاک کنه
Kamyar.Kimiyabeigi
چهارشنبه 20 اردیبهشت 1385, 09:25 صبح
حالا باید یه تابع بنویسم که فرزندان گره را بدست بیاره و اونارا پاک کنه
دقیقا" همونطور که دوست عزیز جناب hpx گفتند باید عمل کنین
مطهر
چهارشنبه 20 اردیبهشت 1385, 20:53 عصر
اما .....:گریه: :گریه:
چطوری فرزندان یک گره را بدست آورم
یه تابع بازگشتی می خواد که نمی دونم چطور باید بنویسم
AminSobati
چهارشنبه 20 اردیبهشت 1385, 23:42 عصر
ضمن دیدن این لینک:
http://www.barnamenevis.org/forum/showthread.php?t=45507
اول باید ID تمام Childها رو در یک جدول بریزید (یا به عنوان یک Subqeury داشته باشید) و سپس:
DELETE MyTable FROM AllChildren WHERE MyTable.ID=AllChildren.ID
hpx
پنج شنبه 21 اردیبهشت 1385, 20:32 عصر
راه دیگه این می تونه باشه
اگه ساختار table همونیه که تو پست قبل گفته شده کافیه فقط id مربوط به parent node رو بفرستی به db و command زیر رو اجرا کنی
delete from table1 where parent_id = @id
AminSobati
پنج شنبه 21 اردیبهشت 1385, 23:55 عصر
راه دیگه این می تونه باشه
اگه ساختار table همونیه که تو پست قبل گفته شده کافیه فقط id مربوط به parent node رو بفرستی به db و command زیر رو اجرا کنی
delete from table1 where parent_id = @id
این دستور فقط فرزندان مستقیم رو حذف میکنه. ولی ممکنه رکوردهایی وجود داشته باشند که فرزند فرزندها (نوه!) باشند
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.