我有一个用户定义的函数,在许多存储过程中使用,它将返回一些值。如果我可以添加一个新的可选参数。
如果我不传递任何值,它应该为空,如果我传递一些值,它应该接受它。我不想去更改所有存储过程来执行此操作。
示例代码
dbo.CalculateAverageForUser(userid int)
我可以用吗dbo.CalculateAverageForUser(userid int, type NVARCHAR(10) = NULL)
如果您不想调整引用该函数的所有现有存储过程,那么我认为您需要使用现有函数中的代码创建一个新函数
CREATE FUNCTION CalculateAverageForUser2
(
@userid int,
@param2 nvarchar(10) = NULL
)
RETURNS float
AS
/*Code from existing function goes here*/
然后只需将现有函数更改为以下内容即可
ALTER FUNCTION CalculateAverageForUser
(
@userid int
)
RETURNS float
AS
BEGIN
RETURN dbo.CalculateAverageForUser2(@userid, DEFAULT)
END
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)