2

私の単体テストでは、テスト用に多くのデータを作成し、テスト後に削除します。一部のエンティティを削除するのにかかる時間を見て、私は非常に驚きました。

あるテストでは、2 つの異なるエンティティ タイプを作成しました。最初のタイプは、削除に約 200 ミリ秒かかりました。2 番目のタイプは、削除に約 11000 ミリ秒かかりました。これは、エンティティとの何らかのカスケード関係の依存関係によるものだと推測していますが、トレースをオンにすると、依存オブジェクトを探しているように見える選択ステートメントが表示され、約 1100 ミリ秒かかり、その後削除に時間がかかりました約9000ミリ秒。

削除のパフォーマンスを向上させる方法について何か提案はありますか?

4

1 に答える 1

1

親子関係がある場合、またはカスケード削除が設定されている場合、削除する子レコードも検索されます。それはあなたが見ている選択ステートメントかもしれません。リレーションシップを開くと、Cascade All for delete としてリストされているリレーションシップがあるかどうかを確認できます。

削除制限

于 2013-03-31T19:51:42.630 に答える