Ya, ini adalah perilaku yang diharapkan di MySQL (sebenarnya di ANSI-92 juga). NULL
nilai tidak diperlakukan sebagai nilai yang sama dalam kunci unik dan kunci utama tidak boleh berisi NULL
nilai menurut definisi.
(http://www.contrib.andrew.cmu.edu /~shadow/sql/sql1992.txt )
Karena Anda memiliki batasan kunci asing pada kolom yang dapat dibatalkan, saya akan menyarankan untuk menambahkan nilai dummy ke tabel induk yang menyatakan fakta bahwa induk tidak relevan atau tidak ditentukan (catatan di mana ID =0 mungkin) dan tambahkan NOT NULL
kendala pada kolom. (Selain itu Anda dapat menambahkan nilai dummy sebagai DEFAULT
).