【发布时间】:2013-08-07 13:32:16
【问题描述】:
我正在尝试使用 VS2012 和框架 4.0 连接到 IBM DB2。 我安装了 64 位 IBM 数据服务器驱动程序包(DS 驱动程序)(V10.5 修订包 2)和 32 位(仅 1 个可用)IBM Database Add-Ins for Visual Studio (V10.1 FP 2)
如果我使用 ODBC 驱动程序连接,则连接成功。但是如果我使用 IBM.Data.DB2 连接,我会得到以下错误:
ERROR [08001] [IBM] SQL30081N 出现通信错误 检测到。正在使用的通信协议:“TCP/IP”。沟通 正在使用的 API:“SOCKETS”。检测到错误的位置: “10.60.20.34”。检测错误的通信功能:“连接”。 协议特定错误代码:“10061”、“”、“”。 SQLSTATE=08001
这里是示例代码:
string connStr = "Database=TestDB;User ID=demouser;Password=demouser5;Server=DemoServer;Connection Timeout=0";
DB2Connection cn = new DB2Connection();
cn.ConnectionString = connStr;
cn.Open();
Console.ReadKey();
cn.Close();
This link 说可能是服务器上的防火墙问题,但是 ODBC 是如何能够连接的,IBM 驱动程序会抛出异常。
感谢任何见解。
【问题讨论】:
-
希望这可以帮助你到达某个地方 - stackoverflow.com/questions/11762206/…
-
你确定ODBC的配置和框架里的一样吗?您是否安装了“数据服务器客户端”?是否正确配置?您是否尝试过附加到远程实例?您是否通过提供 DB2 端口来测试 telnet 检查?
-
@AngocA : 我发现我们的数据库是 UDB2 在 AS400 上运行的。无法使用 IBM.Data.DB2 与它建立连接。为此,我不得不使用 IBM.Data.DB2.iSeries 并且效果很好。
标签: c# .net db2 database-connection ibm-midrange