0 امتیاز
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_facfo_listkala". 
The conflict occurred in database "Factor", table "dbo.listkala", column 'idkala'. 
The statement has been terminated.



 

این خطا مربوط به چی هست که بعد از اجرای برنامههنگام زدن ثبت دیده میشه

بسته شده

1 پاسخ

+3 امتیاز
 
بهترین پاسخ
سلام

محدودیت کلید خارجی رو نقض کردین

این اررور وقتی اتفاق میوفته که قصد دارید رکوردی در جدول فرزند درج کنید که پدری نداره.مثلا فرض کنید در جدول پدر ۲ رکورد دارید که مقدار کلید اصلییشون ۱ و ۲ هست . حالا اگر شما بیاین در جدول فرزند رکوردی رو درج کنید که مقدار کلید خارجیش ۳ باشه اون اررور رو میده
ممنونم میشه بیشتر و کمی ساده و واضح تر توضیح بدین؟

خیلی ممنون
توسط (2,130 امتیاز) 7 26 143
به عنوان مثال فرض کنید که دیتابیس شما دو جدول به نام های Personel و Order داره . که جدول Personel لیست مشتریان و جدول Order لیست سفارشات رو نگهداری میکنه . چونکه هر مشتری می تونه چندین سفارش داشته باشه باید یک ارتباط از نوع یک به چند بین دو جدول ایجاد کنیم . خوب برای اینکار باید کلید اصلی جدول Personel رو در جدول Order قرار بدیم .

 

خوب الان وقت اضافه کردن اطلاعات هست . به فرض 2 رکورد مشتری در جدول Personel اضافه می کنیم که فیلد کلید اصلیشون به ترتیب برابر 1 و 2 هست . حالا می خوایم برای این 2 مشتری سفارش هم اضافه کنیم . اگر در جدول سفارشتان مقدار کلید خارجی ( که به فیلد کلید اصلی جدول پدر که همون Personel هست اشاره می کنه ) از مقادیر 1 و 2 استفاده کنیم بدون مشکل رکورد ها اضافه میشن ، اما اگر از مقادیری به جز 1 و2 استفاده کنیم چون به رکوردی در جدول پدر اشاره نمیکنه خطای بالا رو بهتون نشون میده.
توسط (6,145 امتیاز) 5 11 116
در حالت کلی شما ابتدا باید در جدول پدر داده ای رو وارد کنید

اگر در جدول پدر داده ای نباشه و سعی کنید در جدول فرزند رکوردی رو اضافه کنید خطا بهتون میده
توسط (6,145 امتیاز) 5 11 116
خیلی ممنونم
توسط (2,130 امتیاز) 7 26 143
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,924 کاربر

دسته بندی ها

...