いくつかの利点は次のとおりです。
-
保守性:app1、app2、およびapp3の呼び出しを編集しなくても、プロシージャのロジックを変更できます。
-
セキュリティ/アクセス制御:誰がどのテーブルまたはどのテーブル行にアクセスできるかを制御するよりも、誰が事前定義されたプロシージャを呼び出すことができるかを心配する方が簡単です。
-
パフォーマンス:アプリがDBと同じサーバー上になく、実行している操作に複数のクエリが含まれる場合、プロシージャを使用すると、データベースへの呼び出しがいくつでも行われるのではなく、データベースへの呼び出しが1回行われるため、ネットワークのオーバーヘッドが削減されます。クエリ。
-
パフォーマンス(2):プロシージャのクエリプランは通常キャッシュされるため、再準備することなく何度も再利用できます。
(あなたの特定の例の場合、利益は確かにゼロです。)