Es gibt eine Eigenschaft/Einschränkung, die Fremdschlüssel in Ihr System einbringen, die bisher noch nicht erwähnt wurde. Das ist die Festschreibungs-/Transaktionslogik (so nenne ich sie jedenfalls). Bei aktivierten Fremdschlüsseln müssen alle Zeilen für eine Aktualisierung in allen betroffenen Tabellen vorhanden sein, damit die Übertragung funktioniert (und nicht einen SQL-Fehler auslöst, der besagt, dass die Fremdschlüssel-Beschränkungen verletzt wurden).
Wenn Sie einen Code haben, der funktioniert und mit Commits/Transaktionen "schnell und locker" spielt. Dann könnte es sein, dass Sie etwas nachbessern müssen, damit die Dinge mit FKs im Schema funktionieren.
Außerdem können Sie zumindest bei Oracle Beschränkungen deaktivieren (nicht nur löschen/entfernen). Sie können sie also leicht ein- und ausschalten. Das ist praktisch, wenn Sie einige Massenoperationen durchführen wollen, ohne den Overhead der Beschränkungen, oder um einige "Operationen" an den Daten durchzuführen, die Zwischenzustände haben, die die Beschränkungen nicht erfüllen würden.