0

この関数を実行できません。エラーが発生します。

テーブル変数「@Handle」を宣言する必要があります。

関数の定義:

CREATE FUNCTION [dbo].[FnGetHandle]()
RETURNS INT
AS
  BEGIN
      DECLARE @Handle AS INT;
      DECLARE @strUser AS NCHAR(256);

      SET @Handle = 0;
      SET @strUser = CURRENT_USER;

      INSERT INTO tbl_handle
      Output      Handle
      INTO @Handle ( UserName )
      VALUES      ( @strUser );

      RETURN @Handle
  END

テーブル定義:

tbl_handle定義(int ID、ユーザー名nvarchar、作成日を処理します)

4

1 に答える 1

3

このoutputコマンドは、テーブルまたはテーブル変数に出力します。出力値を保持するテーブル変数を作成できます。

declare @T table(handle int)

insert into ...
select ...
output inserted.Handle into @T

select @Handle = handle
from @T

return @Handle
于 2012-05-10T07:50:28.140 に答える