You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找包含指定用户定义函数的SQL Server数据库?

查找SQL Server中函数所属数据库的查询语句

以下是可直接使用的查询语句,输入目标函数名后,会遍历所有数据库并返回该函数所在的数据库、架构及函数类型:

-- 替换为你要查找的函数名称
DECLARE @TargetFunction NVARCHAR(128) = 'YourFunctionName';

-- 遍历所有数据库查询目标函数
EXEC sp_msforeachdb '
USE [?];
SELECT 
    DB_NAME() AS 数据库名称,
    SCHEMA_NAME(s.schema_id) AS 架构名称,
    o.name AS 函数名称,
    CASE o.type 
        WHEN ''FN'' THEN ''标量函数''
        WHEN ''IF'' THEN ''内联表值函数''
        WHEN ''TF'' THEN ''表值函数''
        WHEN ''FS'' THEN ''CLR标量函数''
        WHEN ''FT'' THEN ''CLR表值函数''
    END AS 函数类型
FROM 
    sys.objects o
INNER JOIN 
    sys.schemas s ON o.schema_id = s.schema_id
WHERE 
    o.name = ''' + @TargetFunction + '''
    AND o.type IN (''FN'', ''IF'', ''TF'', ''FS'', ''FT'');
'

使用说明:

  • 将@TargetFunction变量的值替换为你要查找的函数名
  • 执行后,结果集会列出所有包含该函数的数据库信息;若无结果,则说明该函数不存在于当前实例的任何数据库中
  • 支持查找各类SQL Server函数:标量、表值、CLR函数等

内容的提问来源于stack exchange,提问作者Azhar Majeed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 23:53:19