PDA

View Full Version : مشکل درذخیره کردن اطلاعات



a-azad
پنج شنبه 09 خرداد 1387, 14:17 عصر
سلام.من 3تا جدول دارم .که دوتاارجدول از طریق یک فیلدID با فیلدID(IDENTITY-جدول اصلی ارتباط دارن.حالا من می خوام اطلاعات که وارد DBEDITهام می کنم.بره تو 3تاجدولم ذخیره بشه.اینطورنوشتم.3تاQUERY OPEN کردم بعد APPENDبعدPOST
ولی خطا می ده که FIELD ID CANNOT MODIFIED
ممنون کمکم کنید

a-azad
شنبه 11 خرداد 1387, 06:52 صبح
سلام من 3تا جدول دارم code primary key وdentityدرجدول charachter,وforeign keyدرجدول هاdescription ,calculateمی خوا م اطلاعات که داخل dbeditتایپ می شه داخل این 3کوئری ذخیره شود.کدم را به این صورت می نویسم

enterform.Caption:='ËÈÊ ˜ÇÑÏ˜Ó ææÑæÏÇæáíå ÇØáÇÚÇÊ';
return.chquery.Insert;
return.desquery.Insert;
return.calquery.Insert;
return.desQuery.FieldByName('code').AsInteger := return.chQuery.FieldByName('code').AsInteger;
return.calQuery.FieldByName('code').AsInteger:= return.chQuery.FieldByName('code').AsInteger;
if enterForm.ShowModal=mrOk then begin
return.chQuery.Post;
return.calQuery.Post;
return.desQuery.Post;
end else begin
return.chQuery.cancel;
return.desQuery.cancel;
return.calQuery.cancel;
واین خطا را می دهد

insert statment conflicted with column foreign key constraint(fk-calculate-charachter) the conflict occured in database store table charachter ,column code
لطفاًبه من کمک کنید .بدجوری گیرافتادم

حمیدرضاصادقیان
شنبه 11 خرداد 1387, 07:28 صبح
سلام.اولا نیازی نیست هم append به کار ببرید هم insert. دوما پیغام خطایی که به شما میده شما داری در یکی از جداولت رکوردی رو اضافه میکنی که اون جدول رو بعنوان کلید خارجی برای یک جدول دیگه در نظر گرفتی. بعد رکورد اضافه شده در فیلد مربوطه با رکوردی که در جدول اصلی اضافه شده همخوانی نداره به همین خاطر بهت خطا میده.

a-azad
شنبه 11 خرداد 1387, 08:40 صبح
خوب چطور باید بگم که بروبه رکورد جدید واطلاعات dbeditذخیره کن؟ممنون می شم کدش بنویسین

a-azad
شنبه 11 خرداد 1387, 12:44 عصر
کسی نیست جواب بده.

Arghavan_Reza
شنبه 11 خرداد 1387, 13:24 عصر
اگر فیلد CODE را از نوع IDENTITY تعریف کرده باشید اجازه مقداردهی هنگام درج رکورد ندارید بلکه SQL بطور خودکار مقداردهی می کند.

a-azad
شنبه 11 خرداد 1387, 21:51 عصر
codeتوی جدول اصلی charachter به صورتidentity(primary key)ولی تو دوتا جدول دیگر descriptionوcalculateforeبه صورت foreign key.درضمن دوجدولdescriptionوcalculateفیلدidدار ن که identity هست.حالا وقتی insert می کنم خطا میده که codeتوی جدول description وcalculate نمی تونهnot null باشه.درواقع مقدار کد که توی جدول اصلی charachterهست نمی تونه بریزه توforeign key.اشکال کجاست؟رابطه هامم درستن.توراخدا یکیhelp کنه.

a-azad
یک شنبه 12 خرداد 1387, 08:38 صبح
لطفا یکی جواب بده

حمیدرضاصادقیان
یک شنبه 12 خرداد 1387, 16:09 عصر
میتونی اون جدولت رو ازش یک Script بسازی ضمیمه کنی ببینیم چیه؟

اون دو جدولی که باهم لینک هستند.

a-azad
یک شنبه 12 خرداد 1387, 20:03 عصر
سلام.چطورscript کنم.بعد کلاًچطور می شه همزمان اطلاعات تو چند تا جدولی که باهم ارتباط دارندذخیره کرد؟

حمیدرضاصادقیان
یک شنبه 12 خرداد 1387, 21:01 عصر
سلام.شدنش که میشه.شما اون جداولی باهم ارتباط دارند رو انتخاب کنید بعد روش راست کلیک کنید در قسمت All task گزینه generate sql script داره بعد باید گزینه primary key روتیک بزنی .

a-azad
یک شنبه 12 خرداد 1387, 22:15 عصر
منظورتون تبoptionگزینه script primary keys foreign keys default?

a-azad
یک شنبه 12 خرداد 1387, 22:17 عصر
بعد حالا چطورازاین اسکرسپت توی دلفی استفاده کنم

a-azad
یک شنبه 12 خرداد 1387, 22:18 عصر
حالا چطورازاین اسکریپت توی دلفی استفاده کنم

حمیدرضاصادقیان
دوشنبه 13 خرداد 1387, 07:19 صبح
نیازی نیست شما استفاده کنی.شما اونو در سایت آپلود کن تا دانلود کنم جدول شما رو ببینم.