ここに私の問題があります:私は一連のIDを持っています。これらは、ルート エンティティのコレクションの ID です。ここで、これらすべてのルート エンティティを効率的に削除したいと考えています。
WHERE Id IN (1, 2, 3)
子を持つルートエンティティを削除しているため、句のタイプを実行できません。
すべてのルート エンティティを取得して 1 つずつ削除することを回避できるかどうか疑問に思っています。そのアプローチの問題はそれほどではなく、SELECT
多くの個別のDELETE
ステートメントがあります。
すべての子の削除を含め、NHibernate がこれをバッチ処理することは可能ですか? 余分な複雑さ: 子供は自分の子供を持つことができます。
したがって、NHibernate には、最初に IN 節を持つ「最下位」の子 (おそらく複数のもの) を削除し、次に IN 節を持つ子、最後に IN 節を持つルート エンティティを削除する必要があります。
これが不可能な場合、NHibernate を使用して複数のルート エンティティを効率的に削除する良い方法は何ですか?