PDA

View Full Version : پاک کردن یک سطر از دو جدول



mina1363
شنبه 28 شهریور 1388, 14:41 عصر
سلام دوستان
دو تا جدول دارم که بینشان relation وجود داره و حالا میخوام با یک خط دستور یک رکورد از هر دو جدول که دارای فیلد مشترک هستند رو پاک کنم با چه کدی میتونم این کار رو انجام بدم؟
ممنونم

بهنام بهمنی
شنبه 28 شهریور 1388, 14:43 عصر
اگر بين جداولتان ارتباط برقرار کرده باشيد, در مشخصات ارتباط مي توانيد حالت Cascade Delete را فعال کنيد در اين صورت در صورت حذف يک رديف از جدول اصلي , در جدول دوم هم رديف مرتبط حذف مي شود.

محمد سلیم آبادی
شنبه 28 شهریور 1388, 15:11 عصر
یک رکورد از هر دو جدول
این تنها زمانی امکان پذیر است که بین دو جدول یک ارتباط یک به یک وجود داشته باشد که این نوع ارتباط به ندرت استفاده می شود.
فکر کنم منظورتان این بوده است که مثلا وقتی فیلد جدول اصلی (reference) را حذف می کنید سطر های متناظر آن در جدول کلید خارجی هم حذف شوند.
اگر اینگونه باشد از خاصیتی که در پست شماره دو ذکر شده است استفاده کنید.

mina1363
شنبه 28 شهریور 1388, 16:49 عصر
بله دقیقا منظورم همین است که فزمودید حالا با کدنویسی اینو چه جوری باید لحاظ کنم؟
جدول اصلی Office
جدول کلید فرعی دار SaleMali
فیلد رابطه دار OfficeID است
برای این باید چه جوری عمل کنم؟

محمد سلیم آبادی
شنبه 28 شهریور 1388, 17:11 عصر
ALTER TABLE SaleMali
ADD CONSTRAINT FK_office
FOREIGN KEY ([OfficeID])
REFERENCES Office([OfficeID])
ON DELETE CASCADE