次の方法で共有


ユーザー定義関数の実行

Transact-SQL を使用して、SQL Server 2014 でユーザー定義関数を実行できます。

このトピックについて

開始する前に

制限事項と制約条件

Transact-SQL では、パラメーターは、値を使用するか、@parameter_name=value を使用して指定できますパラメーターはトランザクションの一部ではありません。そのため、後でロールバックされるトランザクションでパラメーターが変更された場合、パラメーターの値は前の値に戻りません。 呼び出し元に返される値は常に、モジュールから戻る時点での値になります。

安全

権限

EXECUTE ステートメントを実行するためにアクセス許可は必要ありません。 ただし、EXECUTE 文字列内で参照されるセキュリティ保護可能なリソースに対するアクセス許可が必要です。 たとえば、文字列に INSERT ステートメントが含まれている場合、EXECUTE ステートメントの呼び出し元には、ターゲット テーブルに対する INSERT 権限が必要です。 EXECUTE ステートメントがモジュール内に含まれている場合でも、EXECUTE ステートメントが検出された時点でアクセス許可がチェックされます。 詳細については、EXECUTE (Transact-SQL) を参照してください。

Transact-SQL の使用

ユーザー定義関数を実行するには

  1. オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。

  2. 標準バーで [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。

    USE AdventureWorks2012;  
    GO  
    -- Declares a variable and sets it to zero.  
    -- This variable is used to return the results of the function.  
    DECLARE @ret nvarchar(15)= NULL;   
    
    -- Executes the dbo.ufnGetSalesOrderStatusText function.  
    --The function requires a value for one parameter, @Status.   
    EXEC @ret = dbo.ufnGetSalesOrderStatusText @Status= 5;   
    --Returns the result in the message tab.  
    PRINT @ret;  
    

詳細については、「EXECUTE (Transact-SQL)」を参照してください。