実際に削除を実行せずに、DELETEが制約違反に遭遇するかどうかを予測できるようにしたいと思います。
これを行うための私のオプションは何ですか?DELETEの「ドライラン」を実行する簡単な方法はありますか?
このステートメントだけの例外を回避しようとしていますか、それとも、この削除を含む大きなバッチでのエラー処理を容易にしようとしていますか?
—
アーロンバートランド
FKが存在するかどうかを確認し、SELECTステートメントを実行して値を確認できますか?
—
SQLRockstar 2012
Aaron:複数のDELETEのバッチを個別のトランザクションで実行する必要があります。1つが失敗した場合、他はすでにコミットされています。(最初から悪い設計だと思いますが、それは私のアプリケーションではなく、変更されていません。)現時点での最善の回避策は、DELETEが失敗するかどうかを確認するためのドライチェックを行うようなものです。
—
ジェイ・サリバン
まだわかりません。残りの削除を成功させようとしていますか、それともすべての削除が成功するか、またはどれも成功しないことを前もって確認しようとしていますか?
—
アーロンバートランド
アーロン:すみません、はっきりさせていませんが、はい、すべてが成功するか、どれも成功しないようにしています。
—
ジェイサリバン