• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:外部キーを持つテーブルを作成しようとするとエラーがでます)

外部キーを持つテーブルを作成しようとするとエラーが発生する

このQ&Aのポイント
  • XAMPPバージョン1.5.4とMySQLバージョン4.1.16の環境で、my.cnfでInnoDBを使用できるように設定しています。admin_rolesテーブルを作成し、さらにadmin_user_roleテーブルを作成しようとするとエラーが発生します。
  • admin_user_roleテーブルの作成中に「Error Number: 1005 Can't create table '.\test\admin_user_role.frm' (errno: 150)」というエラーが表示されます。
  • このエラーは、admin_user_roleテーブルのrole_id列の外部キー制約がadmin_rolesテーブルのid列と一致していないために発生しています。外部キー制約の設定が間違っている可能性があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • auty
  • ベストアンサー率58% (284/486)
回答No.1

下記のページに >>> 整数型については、サイズと符号の有無が同じでなければなりません。 となっていますが、 id BIGINT UNSIGNED と role_id BIGINT が引っ掛かりませんか。

参考URL:
http://dev.mysql.com/doc/refman/4.1/ja/innodb-foreign-key-constraints.html
takagoo100
質問者

お礼

ご返答ありがとうございます。 たしかに言われてみるとそうですね・・・ UNSIGNEDにしたらできました。ありがとうございます。

関連するQ&A