create_user INT UNSIGNED ZEROFILL
ne peut pas référencer id INT
, car ceux-ci comptent comme des types de données différents à des fins de référence de clé étrangère. Faites-leur le même type de données.
La seule différence de type de données autorisée entre les colonnes d'une relation de clé étrangère est la longueur d'un varchar. Par exemple, VARCHAR(10) peut référencer VARCHAR(20) ou vice-versa.
Toute autre différence de type de données, de taille ou de jeu de caractères est incompatible pour l'intégrité référentielle.
Même avec ZEROFILL
sur une colonne mais pas sur l'autre rend les types de données incompatibles.