আমি একটি বহিরাগত যোগদান করি এবং informix
ডাটাবেসে সফলভাবে সম্পাদন করি তবে আমি আমার কোডে নিম্নলিখিত ব্যতিক্রম পেয়েছি:
DataTable dt = TeachingLoadDAL.GetCoursesWithEvalState(i, bat);
সীমাবদ্ধতা সক্ষম করতে ব্যর্থ। এক বা একাধিক সারিগুলিতে অ শূন্য, অনন্য, বা বিদেশী-কী সীমাবদ্ধতা লঙ্ঘনকারী মান রয়েছে।
আমি সমস্যাটি জানি, তবে কীভাবে এটি ঠিক করতে হয় তা আমি জানি না।
আমি দ্বিতীয় সারণীতে বাইরের জোড়টি তৈরি করি তাতে একটি যৌগিক প্রাথমিক কী রয়েছে যা পূর্ববর্তী বাহ্যিক যোগ কোয়েরিতে শূন্য।
সম্পাদনা করুন:
SELECT UNIQUE a.crs_e, a.crs_e || '/ ' || a.crst crs_name, b.period,
b.crscls, c.crsday, c.from_lect, c.to_lect,
c.to_lect - c.from_lect + 1 Subtraction, c.lect_kind, e.eval, e.batch_no,
e.crsnum, e.lect_code, e.prof_course
FROM rlm1course a, rfc14crsgrp b, ckj1table c, mnltablelectev d,
OUTER(cc1assiscrseval e)
WHERE a.crsnum = b.crsnum
AND b.crsnum = c.crsnum
AND b.crscls = c.crscls
AND b.batch_no = c.batch_no
AND c.serial_key = d.serial_key
AND c.crsnum = e.crsnum
AND c.batch_no = e.batch_no
AND d.lect_code= e.lect_code
AND d.lect_code = ....
AND b.batch_no = ....
সমস্যাটি টেবিলের সাথে ঘটে cc1assiscrseval
। প্রাথমিক কীটি হ'ল (ব্যাচ_নো, ক্রিসনাম, লেেক্ট_কোড)।
কীভাবে এই সমস্যার সমাধান করবেন?
সম্পাদনা করুন:
@PaulStock
পরামর্শ অনুসারে : তিনি যা বলেছিলেন আমি তা করি, এবং আমি পেয়েছি:
? dt.GetErferences () [0] {System.Data.DataRow} hasErferences: সত্য আইটেমআরাই: {অবজেক্ট [10]} RowError: "কলাম 'ইভাল' DBNull.Value এর অনুমতি দেয় না।"
তাই আমি প্রতিস্থাপন e.eval
করে NVL (e.eval,'') eval
আমার সমস্যাটি সমাধান করি,। এবং এটি আমার সমস্যার সমাধান করে। অনেক ধন্যবাদ.
,e.eval,e.batch_no,e.crsnum,e.lect_code,e.prof_course
কোয়েরি থেকে সরিয়ে ফেলি প্রতিটি জিনিস ঠিক হয়ে যায়। দয়া করে সমস্যা কি