残念ながら、LATEST FOREIGN KEY ERROR
から外部キーエラーを取得するより良い方法はありません。 SHOW ENGINE INNODB STATUS
のセクション 。列情報は次のように出力されます:
Trying to add in child table, in index `fk` tuple:
DATA TUPLE: 2 fields;
0: len 11; hex 4163636573736f72794964; asc AccessoryId;;
1: len 4; hex 80000003; asc ;;
これは、インデックス(fk
)から列の完全なセットを出力しています。 )、そしてあなたが推測したように、フォーマットは次のとおりです:
<column index>:
len <length of bytes stored>;
hex <hex representation of bytes>;
asc <ascii representation of bytes>;;
さらに残念ながら、InnoDBは、MySQLの列タイプがどのように格納されているかを十分に認識していないため、適切な印刷表現を提供できません。そのため、一部の値は少し「奇妙」です。 80000003
整数3に格納されているバイトの16進表現です(InnoDBは内部で上位ビットを反転します)。