PDA

View Full Version : حذف رکورد از دو جدول



programerinfonet
دوشنبه 20 آذر 1391, 12:55 عصر
سلام دوستان
من دوتا جدول sql با مشخصات زیر دارم

96405
حالا مشخصه های فیلد B با فیلد F یکیه
حالا چه طوری می تونم با یک دستور DELETE رکوردهای مربوطه رو از دو جدول حذف کنم
ممنون

programerinfonet
دوشنبه 20 آذر 1391, 18:13 عصر
یکی پیدا نشد جواب مارو بده ؟؟؟؟؟

behzadkhatari
دوشنبه 20 آذر 1391, 20:21 عصر
دوست عزیز با یک دستور delete نمیتونی از دوتا table حذف کنی باید برای هر table دستور delete جدا بنویسی.

ali_habibi1384
دوشنبه 20 آذر 1391, 21:23 عصر
با اين دستور ميتوني از جدول 1 اونايي كه توي جدول 2 هست حذف كني:
delete table1 where b in (select f from table2)
اما بعد از حذف شدن ديگه نميتوني بفهمي كدوما توي جدول 1 بوده كه بتوني حذف كني :لبخند: يا بايد قبلش اونا رو يه جا بريزي بعد بگي از جفتش حذف كنه يا اگر از دستوري كه گفتم استفاده ميكني واسه جفتش استفاده كن ولي با Trasaction . تست نكردم با Tran حالا تست كن شايد جواب داد.

programerinfonet
دوشنبه 20 آذر 1391, 23:45 عصر
در واقع سوالمو بهتر بیان کنم این طوره که
من تو برنامم دوتا جدول دارم که تو یکیش مشخصات اقلام فاکتور و تو دیگریش مشخصه های اصلی فاکتور ثبت میشه و چیزی که تو این دو جدول یکسانه شماره فاکتوره که من میخوام وقتی کاربر شماره فاکتور رو تو تکست باکس وارد کرد و کلید حذف رو زد رکورد مربوط به اقلام کالا تو جدول اول که شماره فاکتورش با مقدار تکست باکس یکی هست حذف و رکوردی که شماره فاکتورش تو جدول دوم با مقدار تکست باکس یکیه حذف بشه

یعنی راهی جز نوشتن دو دستور حذف نیست ؟؟؟؟؟؟؟؟؟؟

cccccccccc
سه شنبه 21 آذر 1391, 01:22 صبح
مگه چه مشکلی داره که از دو دستور حذف استفاده کنید؟
هر دو حذف را در یک پروسیجر انجام بدید یا اگه از linq استفاده میکنید بعد از حذف دو مورد از submitchange استفاده کنید

cherchil_hra
سه شنبه 21 آذر 1391, 08:47 صبح
در واقع سوالمو بهتر بیان کنم این طوره که
من تو برنامم دوتا جدول دارم که تو یکیش مشخصات اقلام فاکتور و تو دیگریش مشخصه های اصلی فاکتور ثبت میشه و چیزی که تو این دو جدول یکسانه شماره فاکتوره که من میخوام وقتی کاربر شماره فاکتور رو تو تکست باکس وارد کرد و کلید حذف رو زد رکورد مربوط به اقلام کالا تو جدول اول که شماره فاکتورش با مقدار تکست باکس یکی هست حذف و رکوردی که شماره فاکتورش تو جدول دوم با مقدار تکست باکس یکیه حذف بشه

یعنی راهی جز نوشتن دو دستور حذف نیست ؟؟؟؟؟؟؟؟؟؟


اگه جدول هاتون بهم relation داره (که داره) در ارتباطتون DataBase Designer|Insert And Update Specification|delete rule را روی حالت cascade بذار تا با حذف رکورد از جدول اصلی تمام رکوردهای مربوطه در جدول اقلام توسط sql حذف بشوند

behzadkhatari
سه شنبه 21 آذر 1391, 09:17 صبح
بهترین راهش ایجاد relation هست که خود sql عمل آپدیت و delete رو خودکار انجام میده