SQLがすべてSELECTを実行している場合、ビューとSPROCを使用することには利点がありますか。私の観点からは、これは純粋に組織的なものですが、SPROCがすべてSELECTであり、DBへの書き込みがない場合に、ビューを使用する正当な理由があるかどうか疑問に思います。私はSQLServer2008を使用していますが、これはおそらく他のSQLServer製品にも当てはまります。
2 に答える
3
ビューは、基になるテーブルの詳細を抽象化し、データにウィンドウを提供することを目的としています。
ストアドプロシージャは特定のタスクを実行し、オプションでタスクの実行中に使用されるパラメータを取得します。
ユーザーから引数を取得して特定のタスクを実行する場合は、ストアドプロシージャを作成できます。
特定の方法でデータを公開し、必要に応じてさらにフィルタリングをユーザーに任せたい場合は、ビューを作成できます。
于 2012-09-12T18:10:11.610 に答える
2
特定の役割の特定のデータをカプセル化するというセキュリティ上の利点の他に、ビューにインデックスを作成できるという利点もあります。
MSDNリンクからのいくつかの特定のパフォーマンス上の利点は次のとおりです。
- 集計を事前に計算してインデックスに格納すると、クエリ実行中のコストのかかる計算を最小限に抑えることができます。
- テーブルを事前に結合して、結果のデータセットを保存できます。
- 結合または集計の組み合わせを保存できます。
于 2012-09-12T18:10:15.747 に答える