テーブル内の別のカラムが特定の値を持つ場合にのみ、テーブルが他のテーブルからの外部キーを受け入れるように制約を設定する必要があります。外部キーの制約を追加する方法は、テーブルFKの列の値に依存しますか?
データベースは非常に複雑ですが、私は例をあげてみましょう:
表はFoo:
Foo_id | Foo_value | Another values...
1 | "GOOD" |
2 | "BAD" |
3 | "GOOD" |
テーブルバー:
Bar_id | Foo_id(FK) | Another values...
1 | 1 |
2 | 1 |
3 | 3 |
あなたはバーだけはFooからIDを受け入れる受け入れるべき見ることができるようにここでFoo_Valueは「良い」です。
チェック制約を追加しようとしましたが、WHERE文を受け入れないため、Foo_Valueにアクセスできません。私は検索しようとしましたが、実際に何かを見つけることができない、または私の説明が間違っています。
おかげで助けを求め、これは仕事を行います。 – FilipRistic