SQL函数和默认值

时间:2011-07-06 13:00:55

标签: sql-server-2005 function default-value user-defined-functions sql-function

我有一个SQL函数,它有3个参数。第3个参数的默认值为NULL。但是,我不能只写:

dbo.myFunction(Param1, Param2)

我收到错误:

An insufficient number of arguments were supplied for the procedure or function dbo.myFunction.

因此我必须写:

dbo.myFunction(Param1, Param2, NULL)
dbo.myFunction(Param1, Param2, default)

有没有办法可以写dbo.myFunction(Param1, Param2)?我认为这更清洁了(并且我不得不修改现有的功能,我添加了一个新的参数!)

1 个答案:

答案 0 :(得分:3)

它们是默认参数,而不是可选参数&必须始终使用值default传递给调用。

如果您愿意,可以进行现有的dbo.myFunction(Param1, Param2)来电dbo.myFunctionEx(Param1, Param2, default)