PDA

View Full Version : حذف رکورد از جدولی که کلیدش در جدول دیگری هم کلید است



farzaneh_bala
جمعه 04 بهمن 1392, 12:06 عصر
با سلام دوستان
من جدولی به اسم student دارم که میخوام روی اون عملیات حذف انجام بدم
یک جدول دیگه هم دارم که کلید جدول student همراه با یک فیلد دیگه کلید اصلیشه...
برای حذف رکورد از جدول student چه کار باید بکنم تا با ارور مواجه نشم؟؟؟
لطفا کمکم کنید...

setareh2013
جمعه 04 بهمن 1392, 12:29 عصر
اگه فیلد اصلی داخل جدول دیگه ای استفاده شده ، نباید اجازه حذف بدید .

farzaneh_bala
جمعه 04 بهمن 1392, 12:38 عصر
اگه فیلد اصلی داخل جدول دیگه ای استفاده شده ، نباید اجازه حذف بدید .
کلیداصلی جدول student توی جدول دیگه استفاده شده...
ولی کلید اصلی رکوردی که میخوام از جدول student حذف کنم توی اون جدول استفاده نشده...
نمیشه کاری کرد که با این شرایط ارور نده؟؟

farzaneh_bala
جمعه 04 بهمن 1392, 23:27 عصر
دوستان هیچ کس نمیدونست این مشکل راه حلی داره یا نه؟

fakhravari
شنبه 05 بهمن 1392, 15:04 عصر
حذف tree باید بنویسید.
این خطا موقعی رخ میده که ریلیشن داشته باشید.
باید 2 تابع دلیت بنویسید . فکر کنم فهمیدید دیگه!

farzaneh_bala
شنبه 05 بهمن 1392, 17:24 عصر
حذف tree باید بنویسید.
این خطا موقعی رخ میده که ریلیشن داشته باشید.
باید 2 تابع دلیت بنویسید . فکر کنم فهمیدید دیگه!
بله...
یعنی اول کل رکوردهای مربوطه رو از جدول دومی حذف کنم بعد عمل حذف رو روی جدول اصلی انجام بدم؟؟؟؟...
ولی به هر حال همونجور که گفتم توی جدول دومی هیچ رکورد مرتبطی ایجاد نشده...
با این وجود ارور میده...

fakhravari
شنبه 05 بهمن 1392, 18:33 عصر
اشتباه میکنید.
متن خطا بزارید.

farzaneh_bala
شنبه 05 بهمن 1392, 18:45 عصر
اشتباه میکنید.
متن خطا بزارید.
The DELETE statement conflicted with the REFERENCE constraint "FK_Choice_Class". The conflict occurred in database "db_LearnAndTest", table "dbo.Choice", column 'cID'.
The statement has been terminated.

نام دیتا بیس:db_LearnAndTest
جدول اصلی:Class کلید اصلی(فیلدمشترک):cID
جدول دومی:Choice

fakhravari
شنبه 05 بهمن 1392, 19:47 عصر
یه جا ریلیشن دارید