使用 .Net 技术,我能够连接到 DB2 数据库:
- First I include a reference to "IBM.Data.DB2.iSeries"
Then I create a new IBM.Data.DB2.iSeries.iDB2Connection. The connection string is
DataSource=ChaDb2Server;UserID=MyUsername;Password=MyPassword;
Then I create an IBM.Data.DB2.iSeries.iDB2Command, and so on.
现在,我正在尝试让我的SQL Server 2005直接访问相同的数据。在SQL Server Management Studio中,我右键单击"Linked Servers",然后选择"New Linked Server..."。
Linked Server: ChaDb2Server
Provider: IBM OLE DB Provider for DB2
Product Name: ???
Data Source: ChaDb2Server
Provider String: DataSource=ChaDb2Server;UserID=MyUsername;Password=MyPassword;
Location: ???
我可以留空位置,但产品名称不能为空,我不知道在这里填什么。
在安全选项卡中,我选择“使用此安全上下文进行制作”,并重复用户ID和密码。
已创建链接服务器,但当我尝试展开目录/默认/表时,出现错误消息:
OLE DB provider 'IBMDADB2.DB2COPY1' reported an error. Authentication failed. (Microsoft SQL Server, Error: 7399)
我不知道IBMDADB2.DB2COPY1这个名字的来历。
此外,当我尝试选择数据时:
Select * from ChaDB2Server.ChaDb2Server.Information_Schema.Tables
我遇到了类似的错误:
Msg 7399, Level 16, State 1, Line 1
OLE DB provider 'IBMDADB2.DB2COPY1' reported an error. Authentication failed.
很明显我在连接服务器方面缺少了一些东西。有人知道如何做吗?