如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

首先,需要安装Microsoft OLE DB Provider for DB2

下载地址:http://download.microsoft.com/download/B/B/2/BB22098A-C071-415F-9269-2EB26CEFB562/DB2OLEDB_CN.exe

安装以后,菜单多出一项:

如何使用SQL Server连接服务器访问DB2?

接下来,运行“数据访问工具”详细进行配置。

假设DB2的配置信息如下所示

可访问的数据库地址:jdbc:db2://10.18.50.149:50000/BPMDB
用户名:db2admin
密码:db2admin

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?

说明下第五步的字符集:

主机 CCSID 可以通过以下命令获悉。

db2connecttoBPMDBuserdb2adminusingdb2admin
db2getdbcfgforBPMDB

查询结果:

C:\IBM\BPM\v8.5\db2\BIN>db2 connect to BPMDB user db2admin using db2admin

数据库连接信息

数据库服务器 = DB2/NT64 10.1.1
SQL 授权标识 = DB2ADMIN
本地数据库别名 = BPMDB


C:\IBM\BPM\v8.5\db2\BIN>db2 get db cfg for BPMDB

数据库 BPMDB 的数据库配置

数据库配置发行版级别 = 0x0f00
数据库发行版级别 = 0x0f00

数据库地域 = US
数据库代码页 = 1208
数据库代码集 = UTF-8
数据库国家/地区代码 = 1
数据库整理顺序 = IDENTITY
备用整理顺序 (ALT_COLLATE) =
数字兼容性 = OFF

PC 代码页,可以通过以下操作获悉。

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?如何使用SQL Server连接服务器访问DB2?

第12步的字符串是需要用到的。

Provider=DB2OLEDB;User ID=db2admin;Password=db2admin;Initial Catalog=BPMDB;Network Transport Library=TCP;Host CCSID=1208;PC Code Page=936;Network Address=10.18.50.149;Network Port=50000;Package Collection=BPMDB;Process Binary as Character=False;Units of Work=RUW;DBMS Platform=DB2/MVS;Defer Prepare=False;Rowset Cache Size=0;Persist Security Info=True;Connection Pooling=False;Derive Parameters=False;

终于到了配置链接服务器的时候了,继续走起。

如何使用SQL Server连接服务器访问DB2?

如何使用SQL Server连接服务器访问DB2?

添加成功,下图能看到链接服务器 HEATHERNET

测试链接服务器查询数据

如何使用SQL Server连接服务器访问DB2?

查询正常,能显示中文字段。

提示:如果第5步字符集配置不当将会导致中文字段名无法显示正常且一直会提示该字段不存在。

消息 7339,级别 16,状态 1,第 1 行
OLE DB provider 'DB2OLEDB' for linked server 'HEATHERNET' returned invalid data for column '[HEATHERNET].[BPMDB].[DB2ADMIN].[V_USER_MAPPING].POSITION_NAME'.

以下是配置正确的查询结果

如何使用SQL Server连接服务器访问DB2?

至此,DB2的链接服务器搭建完毕。