症状
请考虑以下情形:
-
在 Microsoft SQL Server 中创建链接的服务器,通过使用 Microsoft OLE DB 提供程序用于 DB2 连接到 IBM DB2 数据库。
-
IBM DB2 数据库被配置为使用代码页 923 (ISO 8859-15 ASCII)。
-
从链接服务器发出查询。
在此方案中,您将收到类似于以下的错误消息:
"Linked_server_name"的链接服务器的 OLE DB 提供程序"DB2OLEDB"返回"一个或多个错误处理命令期间发生。"的消息。
"DB2OLEDB"链接服务器" linked_server_name "的返回消息的 OLE DB 提供程序""。
Msg 7330,级别 16 状态 2,第 1 行
无法读取行从" linked_server_name"的链接服务器的 OLE DB 提供程序"DB2OLEDB"
此外,您可能会发现测试连接和样本查询选项包括 OLE DB 提供程序用于 DB2 的数据访问工具 (DAT) 中返回错误,当 OLE DB 提供程序用于 DB2 尝试连接到 IBM DB2 数据库。
原因
因为 OLE DB 提供程序用于 DB2 数据转换为使用 NLS (国家/地区语言支持) 文件不正确,通过使用代码页 923 与 IBM DB2 数据库通信时出现此问题。
解决方案
累积更新信息
可以解决此问题的修补程序所在的主机集成服务器 2013年累积更新包 1。有关如何获取此累积更新程序包,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
主机集成服务器 2013年2908834累积更新包 1
修补程序信息
可以从 Microsoft 获得受支持的修复程序。然而,此修补程序仅用于解决本文中描述的问题。此修复程序仅适用于遇到本文中描述的问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一个软件更新。
如果此修复程序可供下载,则在此知识库文章的顶部会出现“修补程序下载可用”部分。如果未显示此部分,请与 Microsoft 客户服务和支持部门联系以获取此修复程序。
注意:如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。对于不符合此特定的修补程序的其他支持问题和事项将照常收取费用。有关 Microsoft 客户服务和支持电话号码或创建单独的服务请求的完整列表,请转到下面的 Microsoft 网站:
http://support.microsoft.com/contactus/?ws=support
注意:"提供修补程序下载"窗体显示获取此修复程序的语言。如果看不到您的语言,则修补程序没有那种语言的版本。
系统必备组件
要应用此修补程序,请卸载 DB2 版本 4.0 中,Microsoft OLE DB 提供程序的现有安装,然后使用"文件信息"部分中列出的相应的.msi 文件安装此修补程序。
重新启动信息
您可能需要在应用此修补程序后,重新启动计算机。
更换信息
此修补程序不替换任何以前发布的修补程序。
文件信息
此修复程序的英文版具有的文件属性 (或更新的文件属性)在下表中列出。日期和为这些文件的时间以协调世界时 (UTC) 列出。当您查看文件信息时,它将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用控制面板中的日期和时间项中的时区选项卡。
对于 Microsoft OLE DB 提供程序的 DB2 版本 4.0
文件名称 |
文件版本 |
文件大小 |
日期 |
时间 |
平台 |
---|---|---|---|---|---|
Db2oledbv4_x64.msi |
不适用 |
4,075,520 |
05-Nov-2013 |
20:04 |
不适用 |
Db2oledbv4_x86.msi |
不适用 |
2,989,056 |
05-Nov-2013 |
20:04 |
不适用 |
状态
Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。