0

是否必须为所有用户定义的函数传递输入参数?功能应该有输入参数?

我们知道,存储过程具有输入和输出参数。 功能只有输入参数。

我们可以写一个存储过程,没有太多使用这些参数.. 是否有可能不写输入参数的用户自定义函数?

+1

用户定义的函数将零个或多个输入参数(1024个参数最大值),并返回一个标量的值或一个表。 – knkarthick24 2014-12-08 04:33:02

回答

1

是的,你可以肯定地写没有参数的用户定义的功能。

还有一件事我想澄清一下,函数可能有输入参数,它有返回值。返回值将是标量或表格,取决于您创建的函数的类型。

1

为什么要问如果有可能当你可以只输入几行,并认为它是可能 ;-)

CREATE FUNCTION dbo.NoParamsUDF() 
RETURNS NVARCHAR(50) 
AS 
BEGIN 
    RETURN N'It worked!'; 
END; 
GO 

CREATE FUNCTION dbo.NoParamsTVF() 
RETURNS TABLE 
AS RETURN 
    SELECT dbo.NoParamsUDF() AS [DidItWork?]; 
GO 

SELECT * FROM dbo.NoParamsTVF(); 

返回:

DidItWork?
-------------
它的工作!