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

为何SSMS中链接服务器视图缺失存储过程与函数?

链接服务器看不到存储过程/函数?看这几个解决方向

常见原因

  • 权限不足:你用来访问链接服务器的账号,大概率没有查看存储过程、函数元数据的权限。哪怕能看到数据库和表,也可能缺了VIEW DEFINITION权限,或者对存储过程所在的架构没访问权。
  • OLEDB Provider 默认限制:Microsoft OLEDB Provider for SQL Server 在SSMS的对象管理器里,默认不会自动列出存储过程和函数,得调整配置才行。
  • SSMS 筛选器误开:可能不小心开启了对象筛选,把存储过程和函数给隐藏了。

具体解决步骤

1. 补全权限

登录到链接的目标SQL Server,给当前账号添加对应权限:

-- 授予账号查看所有数据库对象定义的权限
GRANT VIEW DEFINITION TO [你的登录账号];
-- 或者仅针对特定数据库授权
USE [目标数据库名];
GRANT VIEW DEFINITION ON SCHEMA::[dbo] TO [你的登录账号];

执行完成后刷新链接服务器的对象列表。

2. 调整OLEDB Provider属性

  1. 在SSMS中,依次打开服务器对象→链接服务器→提供程序,选中Microsoft OLE DB Provider for SQL Server。
  2. 右键点击属性,勾选允许进程内选项,确定后重启SSMS,再查看链接服务器内容。

3. 清除SSMS筛选器

  1. 如果能看到链接服务器数据库下的可编程性节点,右键它选择筛选器→清除筛选器。
  2. 要是看不到该节点,点开SSMS顶部菜单的视图→对象资源管理器详细信息,在右侧面板中直接查找存储过程/函数。

4. 用T-SQL直接查询

如果以上方法都没效果,直接通过SQL查询更直接:

-- 查询链接服务器上的存储过程
SELECT * FROM [你的链接服务器名].[目标数据库名].[sys].[procedures];
-- 查询链接服务器上的函数
SELECT * FROM [你的链接服务器名].[目标数据库名].[sys].[objects] WHERE type IN ('FN', 'IF', 'TF');

内容的提问来源于stack exchange,提问作者Talal Hallaj

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 00:48:13