1. ホーム
  2. sql

[解決済み] SQL Serverにおける関数とストアドプロシージャの比較

2022-03-23 13:49:46

質問

関数とストアドプロシージャを学び始めてからかなり経ちますが、なぜ、どのような時に関数やストアドプロシージャを使うべきなのかが分かりません。多分、私が初心者だからだと思いますが、同じように見えるのです。

なぜなのか、どなたか教えてください。

解決方法は?

関数は計算された値であり、永続的な環境の変更を行うことはできません SQL Server (すなわち INSERT または UPDATE ステートメントを使用することができます)。

関数がインラインで使用できるのは SQL 文の中でスカラー値を返すか、結果セットを返す場合は結合することができます。

コメントから特筆すべき点、それは答えをまとめることです。Sean K Andersonに感謝します。

<ブロッククオート

関数はコンピュータサイエンスの定義に従って、値を返さなければならず、パラメータとして受け取ったデータを変更することはできない。 (引数)になります。関数は何も変更することができず、必ず は、少なくとも1つのパラメータを持ち、値を返さなければなりません。ストアド procはパラメータを持つ必要がなく、データベースオブジェクトを変更することができます。 であり、値を返す必要はない。