sql >> データベース >  >> RDS >> Sqlserver

更新時のSQLエラー:UPDATEステートメントがFOREIGNKEY制約と競合していました

    このエラーは、テーブルの主キーが更新されたが、別のテーブルからの外部キーによって参照されており、更新固有がアクションなしに設定されている場合に発生します。デフォルトのオプションは「アクションなし」です。

    これが当てはまり、更新操作にアクションが設定されていない場合は、外部キー定義をカスケードに変更できます。

    外部キーを右クリックして、変更を選択します 。 INSERTおよびUPDATEの詳細の下にある外部キー関係ダイアログで、カスケードにUPDATEルールを設定します。

    T-SQLを使用してルールを設定することもできます:

    ALTER TABLE YourTable
    DROP Constraint Your_FK
    GO
    
    ALTER TABLE YourTable
    ADD CONSTRAINT [New_FK_Constraint]
    FOREIGN KEY (YourColumn) REFERENCES ReferencedTable(YourColumn)
    ON DELETE CASCADE ON UPDATE CASCADE
    GO 
    

    これがお役に立てば幸いです



    1. JavaのOracleAdvancedQueue

    2. アダプティブ結合しきい値

    3. SQL Server:information_schemaから外部キー参照を取得する方法は?

    4. EntityFrameworkを介してデータベースから単一の値を取得する方法