SQL 函数 - 日志记录

Caf*_*eek 5 debugging function sql-server-2008

可能的重复:
TSQL 如何在用户定义的函数中输出 PRINT?

这真让我抓狂。

我有一个正在尝试调试的函数,但我无法插入表、执行打印语句,甚至无法从中引发错误。

SQL返回消息

在函数中无效使用副作用运算符“PRINT”。

我如何调试这个,我只想知道变量运行时的值?

KM.*_*KM. 6

尝试:

DECLARE @ExecuteString   varchar(500)
       ,@Yourtext        varchar(500)

@ExecuteString = 'echo  '+@Yourtext+' > yourfile.txt)

exec master..xp_cmdshell @ExecuteString, no_output
Run Code Online (Sandbox Code Playgroud)

使用:“">”创建/覆盖文件,使用“>>”创建/追加到文件。你可能需要使用REPLACE(@Yourtext,'&','^&')来转义&字符

  • @Chad,因为您有一个表值函数,所以我只需构建一个调试文本字符串并将其作为该表中的列返回,您可以在调用代码中转储/显示该列。 (2认同)