それらは最高で最も効率的なものです。本番クエリの場合、 2
を使用します .
私が考えることができる唯一の他の方法 (IMO) は、テスト環境でのデータの迅速かつ汚い削除にのみ適しています (正しい順序を分析する必要を回避します)
<オール>WITH CHECK
を再度有効にする必要があるため、これは非効率的です。 FK が信頼できない状態のままになるのを避けるため。これは、保存されているすべてのデータを再検証する必要があることを意味します。DELETE
をリストします 影響を受けるテーブルのステートメントを任意の順序で実行し、FK エラーが発生せずに成功するまで、必要な回数だけバッチを実行します。