ホームページ > データベース > mysql チュートリアル > MySQL エラー 150: この外部キーを作成できないのはなぜですか?

MySQL エラー 150: この外部キーを作成できないのはなぜですか?

Barbara Streisand
リリース: 2024-11-27 05:19:14
オリジナル
806 人が閲覧しました

MySQL Error 150: Why Can't I Create This Foreign Key?

MySql でエラー 150 が発生しました: 外部キーの解読の問題

別のテーブルを参照する外部キーを持つテーブルを作成しようとすると、開発者は次のような問題に遭遇する可能性があります。エラー 150、その不可解なメッセージで彼らを困惑させます。この記事では、このエラーの根本的な原因を詳しく調べ、解決策を提供します。

MySQL ドキュメントで詳しく説明されているように、以前に削除されたテーブルを再作成するときに、それを参照する外部キー制約に従っていない場合、エラー 150 が発生します。具体的には、テーブルは、最初に作成されたときと同じ列名、型、参照キーのインデックスを維持する必要があります。

この問題を解決するには、テーブルに外部キー (この場合は、 "foo") も InnoDB テーブルとして作成されます。 MySQL のドキュメントによると、外部キー関係に関係する両方のテーブルは、一時テーブルではなく InnoDB テーブルである必要があります。

したがって、エラーを修正するには、次のコマンドを使用して、「foo」テーブルを InnoDB テーブルとして再作成してみてください。 query:

CREATE TABLE foo (
  id INT PRIMARY KEY
) ENGINE = InnoDB;
ログイン後にコピー

「foo」テーブルが InnoDB テーブルとして作成されると、次のコマンドを使用して「bar」テーブルを正常に作成できるはずです。エラー 150 が発生することなく外部キーを参照できます。

以上がMySQL エラー 150: この外部キーを作成できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート