在SQL Server中查找函数的用法

时间:2009-11-30 10:46:19

标签: sql-server tsql sql-server-2008

有没有办法在SQL Server 2008中找到函数的用法?

4 个答案:

答案 0 :(得分:14)

SQL Server 2012的答案:

SELECT DISTINCT sc.id, 
                so.name 
FROM   syscomments sc 
       INNER JOIN sysobjects so 
         ON so.id = sc.id 
WHERE  sc.TEXT LIKE '%functionname%' 
ORDER  BY 2 

enter image description here

答案 1 :(得分:13)

在代码中使用:

SELECT * FROM sys.sql_modules WHERE definition LIKE '%MyFunc%'
UNION
SELECT * FROM sys.computed_columns WHERE definition LIKE '%MyFunc%'
UNION
SELECT * FROM sys.check_constraints WHERE definition LIKE '%MyFunc%'
UNION
SELECT * FROM sys.default_constraints WHERE definition LIKE '%MyFunc%'

我想我已经涵盖了所有基础......

您不能使用sys.comments,因为类型为nvarchar(4000)

答案 2 :(得分:0)

对于SQL2012,在数据库中使用sp_depends将列出内部的所有用法。

例如。

  • EXEC sp_depends'FunctionNameToSearch'
  • EXEC sp_depends'TableNameToSearch'
  • EXEC sp_depends'StoredProcNameToSearch'

答案 3 :(得分:-1)

假设“使用”是指“使用情况统计”,那么SQL Server Profiler可能对您有用。