ホームページ > データベース > mysql チュートリアル > 外部キー制約違反による SQL Server INSERT ステートメント エラーを解決する方法

外部キー制約違反による SQL Server INSERT ステートメント エラーを解決する方法

Mary-Kate Olsen
リリース: 2025-01-20 04:17:13
オリジナル
338 人が閲覧しました

How to Resolve SQL Server INSERT Statement Errors Caused by Foreign Key Constraint Violations?

SQL Server INSERT ステートメントのエラー: 外部キー制約違反

SQL Server で INSERT ステートメントを実行すると、外部キー制約違反が発生する場合があります。このエラーは通常、次のように表示されます:

<code>Msg 547, Level 16, State 0, Line 1
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Sup_Item_Sup_Item_Cat". The conflict occurred in database "dev_bo", table "dbo.Sup_Item_Cat". The statement has been terminated.</code>
ログイン後にコピー

は、挿入されるデータと既存の外部キー関係の間に矛盾があることを示します。

外部キー制約を理解する

外部キーはテーブル間の参照整合性を維持します。これらは、あるテーブルのデータが別のテーブルの有効なエントリと一致することを保証します。 エラー メッセージの「FK_Sup_Item_Sup_Item_Cat」は、「dbo.Sup_Item」テーブルを「dbo.Sup_Item_Cat」にリンクします。

対立の分析

指定された sup_item_cat_id 値が「dbo.Sup_Item_Cat」テーブルに主キーとして存在しないため、INSERT の試行は失敗します。 これは外部キー制約に直接違反します。

問題の解決

これを修正するには、挿入されている sup_item_cat_id 値が「dbo.Sup_Item_Cat」の有効な主キーであることを確認します。 参照される値がターゲット テーブルの主キー列に実際に存在することを確認してください。

さらなるトラブルシューティング手順

  • SQL Server Management Studio (SSMS) を使用して、テーブル スキーマと外部キーの関係を確認します。 (テーブルを右クリック -> [テーブルのスクリプト作成] -> [作成先] -> [新しいクエリ エディター ウィンドウ])。
  • 両方のテーブルのデータを注意深く調べて、矛盾や無効な参照を特定します。
  • 複数の行を挿入する場合は、トランザクションを使用してアトミック性を確保します。すべての挿入が正常に完了するか、何も完了しないかのどちらかです。

以上が外部キー制約違反による SQL Server INSERT ステートメント エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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