SQL Server 2017链接服务器缺失IBMDASQL提供程序如何添加
解决步骤
1. 确认位数匹配
该问题绝大多数是SQL Server和IBMDASQL驱动位数不匹配导致:
- 执行SQL查询
SELECT @@VERSION,确认SQL Server 2017是32位还是64位 - 你在导入导出向导中能看到IBMDASQL,说明你安装了对应向导位数的驱动,但该驱动位数和SQL Server进程位数不一致,因此无法被链接服务器识别
2. 安装对应位数的官方驱动
下载和SQL Server位数完全一致的IBM i Access Client Solutions (ACS) Windows 应用包,安装时必须勾选 IBM Data Access Provider for OLE DB (IBMDASQL) 组件,不要使用旧版的IBM Client Access驱动。
注意:驱动要安装在SQL Server所在的服务器上,而非你本地运行SSMS的设备(如果是远程连接SQL Server的场景)
3. 生效验证
- 安装完成后重启SQL Server服务,完全关闭并重新打开SSMS
- 依次展开SSMS左侧菜单「服务器对象」→「链接服务器」→「访问接口」,即可看到IBMDASQL提供程序
4. 异常排查
如果完成上述操作后仍看不到IBMDASQL,做如下检查:
- 打开对应位数的OLE DB查看器验证驱动是否正常注册:
- 64位查看器路径:
C:\Program Files\Common Files\System\Ole DB\oledb32.exe - 32位查看器路径:
C:\Program Files (x86)\Common Files\System\Ole DB\oledb32.exe
打开后切换到「提供程序」标签,确认存在IBMDASQL条目,不存在则重新安装驱动
- 64位查看器路径:
- 检查注册表对应路径下是否存在IBMDASQL注册项:
- 64位:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Providers\IBMDASQL - 32位:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Providers\IBMDASQL
无对应项可手动添加,或重新安装驱动完成自动注册
- 64位:
内容的提问来源于stack exchange,提问作者Nakres
相关产品推荐
相关产品推荐

