如何在 SSMS 中查看 UDF 的定义?

How do I view the definition of a UDF in SSMS?

我在 SSMS 中获得了一个用户创建的函数,它执行一些 SQL 语句,我正在尝试确定它具体是什么 运行。我怎样才能做到这一点?在 SSMS?

中使用控制台

如果您拥有正确的权限(可能很大 "IF",具体取决于您的环境),您可以像访问存储过程一样访问用户定义的函数。

在数据库名称下,展开 Programmability 文件夹,然后展开 Functions 文件夹。如果您知道它是 Table 值函数还是标量值函数,请查看相应的文件夹。如果你不确定,你将不得不四处寻找它。

找到函数后,右键单击函数名称。在打开的对话框中,select Script Function as -> CREATE to -> New Query Editor Window。这将打开一个查询 window,其中包含函数的文本。

我总是使用 CREATE to 选项。您可以通过在初始对话中单击 Modify 来更快地到达那里,但是在那里生成的脚本有一个 ALTER FUNCTION 语句,您可能会不小心更改代码。使用 CREATE to 选项会打开一个 CREATE FUNCTION 语句,如果您不小心 运行 它,将会抛出一个错误,因为该函数已经存在,并且您不会造成任何伤害。