SQL: 使用函数作为存储过程的参数

SQL: using function as parameter to a stored procedure

我正在尝试使用函数将参数传递给存储过程。

但是这个:

exec stpMySTP dbo.fn_MyFunction(123)

生成错误:

Incorrect syntax near '.'.

向过程传递参数时不能使用函数吗?

您不能将它直接传递给存储过程。声明第一个变量,将其设置为您的函数,然后将其传递给过程。

  DECLARE @pom [return type of function];
  SET @pom = dbo.fn_MyFunction(123);

  EXEC stpMySTP @pom