打印用户定义函数的返回值

时间:2015-06-10 11:11:23

标签: function tsql return-value

我只是想做这样的事情来测试函数:

PRINT fnctGeneric([argument])

我已经四处寻找但却无法找到任何东西。尝试https://www.google.co.uk/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=SQL+Print+function+return+value - https://www.google.co.uk/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=SQL+Print+return+value+from+user-defined+function - https://www.google.co.uk/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=SQL+Print+return+value+from+function

并在堆栈上搜索

https://stackoverflow.com/search?q=Print+return+value+of+function+SQL

但是没有找到任何东西。

我认为这很容易,很容易找到,但事实并非如此,所以我只能假设我错过了什么。

所以我的问题是如何简单地打印函数的返回值?在打印之前,我是否需要将值存储在变量中?

不能这样做:

DECLARE @Return AS VARCHAR(MAX)
SET @Return = fnctCalculateCertName(4471)
PRINT @Return

因为这个

  

Msg 195,Level 15,State 10,Line 205   ' fnctCalculateCertName'不是公认的内置函数名称。

不能第一次尝试:

PRINT fnctCalculateCertName(4471)

再次因为同样的错误。不能这样做:

SELECT fnctCalculateCertName(4471) FROM system

或者这个:

DECLARE @Return AS VARCHAR(MAX)
SELECT @Return = fnctCalculateCertName(4471) FROM system
PRINT @Return

我无法相信打印这样一个函数的结果非常困难:/

它肯定在我的数据库中,我可以在标量值函数选项卡中看到它

1 个答案:

答案 0 :(得分:1)

调用函数时需要添加模式:

PRINT dbo.fnctGeneric([argument])