テーブル セッションとユーザーの間に外部キー制約があります。具体的には、Sessions.UID = Users.ID です。ときどき、Sessions.UID を null にしたいことがあります。これは許されますか?これを行おうとするたびに、FK Constraint Violation が発生します。
具体的には、LINQ を介してセッションに行を挿入しています。Session.User = null; を設定しました。そして、私はこのエラーを受け取ります:
ユーザーとセッションの間の関係を削除しようとしました。ただし、リレーションシップの外部キー (Session.UID) の 1 つを null に設定することはできません。
ただし、User プロパティを null にする行を削除すると、SubmitChanges 行で次のエラーが発生します。
値を null にすることはできません。 パラメータ名: cons
どのテーブルにも「cons」というフィールドがなく、5,500 行の DataContext.designer.cs ファイルにも、関連オブジェクトの QuickWatch にも含まれていないため、「cons」が何であるかわかりません。 .
データベースでは、Session.UID は null 許容の int フィールドであり、User.ID は null 非許容の int です。UID がある場合とない場合があるセッションを記録したいのですが、その FK 関係の制約を無効にせずに記録したいと考えています。これを行う方法はありますか?