RDBMSで「外部キー制約を適用する」の目的を知っています。しかし、「いいえ」に設定した場合、何かメリットはありますか?
通常の本番環境では、この設定は決してNO
に設定する必要があります。
ただし、データベースを開発または再構築しているとき、または実行するとき。 「サニタイズ」(クリーンアップ)する必要のある大量のデータをロードする場合は、外部キー制約をオフにして、「無効な」データをテーブルにロードできるようにするのが理にかなっています。もちろん、私が言ったように(その設定を長期間オフにしておくべきではありません)、データのクリーンアップに進むか、FK制約に違反している行を削除するか、値を更新する必要がありますしたがって、それらは親行と一致します。
繰り返しになりますが、「通常の」本番モードでは、この設定をNO
にすることはできませんが、特定のタスクでは、ジョブをより簡単に実行できる場合があります。注意して使用し、できるだけ早くFK制約をオンに戻してください。
私の知る限り、日常の使用ではありません。私がしばらくの間外部キーを無効にしたのは、データに問題があり、それらを修正することが関係チェックによって隠されているときです。
一括操作中は、パフォーマンスを向上させるために、制約チェックは一時的に無視されます。