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