Попаднах на същия проблем с HeidiSQL. Грешката, която получавате, е много загадъчна. Проблемът ми се оказа, че колоната за външен ключ и колоната за препращане не бяха от един и същи тип или дължина.
Колоната за външен ключ беше SMALLINT(5) UNSIGNED и посочената колона беше INT(10) UNSIGNED . След като ги направих и двата точно от същия тип, създаването на външния ключ работи перфектно.