हां, यह MySQL में अपेक्षित व्यवहार है (वास्तव में एएनएसआई -92 में भी)। शून्य अद्वितीय कुंजियों में मानों को समान मान के रूप में नहीं माना जाता है और प्राथमिक कुंजियों में NULL नहीं हो सकता है परिभाषा के अनुसार मान।
(https://www.contrib.andrew.cmu.edu /~छाया/एसक्यूएल/एसक्यूएल1992.txt )
चूंकि आपके पास अशक्त कॉलम पर विदेशी कुंजी बाधा है, मैं पैरेंट टेबल में एक डमी मान जोड़ने का सुझाव दूंगा जो इस तथ्य को बताता है कि माता-पिता अप्रासंगिक है या निर्धारित नहीं है (रिकॉर्ड जहां आईडी =0 हो सकता है) और <कोड जोड़ें>शून्य नहीं स्तंभ के लिए बाधा। (इसके अतिरिक्त आप डमी मान को DEFAULT . के रूप में जोड़ सकते हैं )।