ORM(これまでのLLBLGenProとEntityFramework4)での限られた経験の中で、クエリは本質的にすべての列のデータを返すことに気づきました。NHibernateがもう1つの人気のあるORMであることは知っています。これが当てはまるかどうかはわかりませんが、当てはまると思います。
もちろん、回避策があることはわかっています。
- SQLビューを作成し、ビュー上にモデルとマッピングを作成します
- ストアドプロシージャを使用して、返された結果セットにモデルとマッピングを作成します
特定の慣行を順守することで、これを軽減できることを私は知っています。
- データを選択するときに行数が合理的に制限されていることを確認する
- テーブルの幅が広すぎないことを確認します(多数の列や大量のデータ型)
だからここに私の質問があります:
上記の方法で十分ですか、それとも返される列の数を制限する方法を見つけることを検討する必要がありますか?
上にリストしたもの以外に、返される列を制限する他の方法はありますか?
プロジェクトでは通常、これにどのようにアプローチしますか?
前もって感謝します。
SELECT *
更新:この種のことは、悪い習慣として考えられている概念に由来します。このディスカッションを参照してください。