0

リモート関数を呼び出した後、スカラー値関数が失敗します。リモートサーバー機能を呼び出す方法はありますか?

これがコードです

ALTER FUNCTION [dbo].[fnGetCatalogNumber] 
(
    -- Add the parameters for the function here
    @ProductID int
)
RETURNS varchar(20) 
AS
BEGIN
     -- Declare the return variable here
      DECLARE @CatalogNumber varchar(20), @catalog_data varchar(20)


    -- Add the T-SQL statements to compute the return value here
    --Exec Dev01.Product_Core.dbo.usp_get_CatalogNumber @ProductId = @ProductID 
     ,@CatalogNumber = @catalog_data output

    -- Return the result of the function
    RETURN @CatalogNumber

END
4

1 に答える 1

1

関数内でストアド プロシージャを実行することはできません。これは、ストアド プロシージャがテーブルの変更などの副作用を誘発する可能性があることを前提としているためです。

関数をストアド プロシージャとして再キャストして、内部ストアド プロシージャの呼び出しを許可することを検討できますが、ここで詳しく説明するように、そうすることには危険、警告、および危険が伴うことに注意してください

于 2013-03-02T00:42:32.913 に答える