ホームページ >データベース >mysql チュートリアル >MySQL エラー 1005: 主キーを外部キーにすることはできますか? 外部キー制約の問題を解決するにはどうすればよいですか?
MySQL 外部キー エラー 1005: 主キーが外部キーである
いいえ、MySQL では主キーを外部キーとして定義することはできません。主キーはテーブル内のレコードを一意に識別し、外部キーは別のテーブル内のレコードを参照します。これら 2 つのロールを組み合わせると、循環制約が発生します。
エラー 1005: テーブル 'dbimmobile.condoni' を作成できません (errno) : 150)」は、外部キーの問題により MySQL がテーブルを作成できないことを示しますconstraints.
「テーブル dbimmobilei/valutazionimercato の外部キー制約のエラー」というメッセージは、インデックスの欠落が問題の原因であることを示しています。 MySQL では、参照されるテーブルに外部キーで指定されたカラムをカバーするインデックスが必要です。
カラム (ComuneImmobile、ViaImmobile) のインデックスを参照テーブル (dbimmobile.Immobile) に作成します。 、CivicoImmobile、InternoImmobile):
CREATE INDEX ix_ComuneViaCivicoInterno ON dbimmobili.Immobile (ComuneImmobile, ViaImmobile, CivicoImmobile, InternoImmobile);
このインデックスは、 dbimMobili.condoni テーブルが参照するときに、MySQL が dbimmobile.Immobile テーブル内で一致するレコードを効率的に見つけられるようにします。
以上がMySQL エラー 1005: 主キーを外部キーにすることはできますか? 外部キー制約の問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。