ホームページ >データベース >mysql チュートリアル >データを挿入するときに「外部のキー制約違反」エラーが発生するのはなぜですか?

データを挿入するときに「外部のキー制約違反」エラーが発生するのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-24 14:07:09991ブラウズ

Why Am I Getting a

データベース整合性エラー: 外部キー制約の競合の詳細な説明

コメント テーブルにデータを挿入しようとしたときにエラーが発生しました。エラー メッセージ「整合性制約違反: 1452 子行を追加または更新できません」は、外部キー制約に問題があることを示しています。

外部キー制約を理解する

外部キー制約は 2 つのテーブル間の関係を確立し、子テーブルのデータが親テーブルの対応するデータと確実に一致するようにします。この例では、コメント テーブルの project_id 列に外部キー制約があり、items テーブルの id 列を参照します。

エラーの理由

エラーの理由は、コメント テーブルに挿入しようとしている project_id 値が項目テーブルに存在しないことです。具体的には、値「50dc845a-83e4-4db3-8705-5432ae7aaee3」は、プロジェクト テーブル内のどの id 値とも一致しません。

解決策

このエラーを解決するには、コメント テーブルに挿入する project_id 値が items テーブルの主キーとして存在することを確認してください。項目テーブルを検証して正しい project_id を特定し、それに応じてコメント テーブルを更新します。

以上がデータを挿入するときに「外部のキー制約違反」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。