Seperti yang ditunjukkan oleh dokumentasi MySQL di kunci asing :
Jadi, jika Anda menggunakan innodb, maka MySQL tidak mengizinkan Anda membuat kunci asing pada bidang yang bukan bidang paling kiri dalam indeks.
Alasannya adalah bahwa dalam indeks multi-kolom Anda tidak dapat mencari nilai berdasarkan bidang yang tidak paling kiri, oleh karena itu indeks tidak dapat digunakan untuk dengan cepat mencari nilai untuk pemeriksaan kunci asing.
Perilaku indeks MySQL ini dijelaskan dalam dokumentasi MySQL di indeks multi-kolom :