繁体   English   中英

使用VS2012框架的IBM DB2 Connection 4

[英]IBM DB2 Connection using VS2012 framework 4

我正在尝试使用VS2012和Framework 4.0连接到IBM DB2。 我安装了64位IBM数据服务器驱动程序包(DS驱动程序)(V10.5修订包2)和32位(仅1个可用)用于Visual Studio的IBM数据库插件(V10.1 FP 2)

如果我使用ODBC驱动程序进行连接,则连接成功。 但是,如果我使用IBM.Data.DB2进行连接,则会出现以下错误:

错误[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();

此链接说这可能是服务器上的防火墙问题,但是ODBC如何能够连接并且IBM驱动程序引发异常。

任何见解表示赞赏。

现在,您知道要连接的内容后,我将在此处添加一些可能会有所帮助的信息。

基本上,DB2系列有三个成员。 您使用哪一个取决于操作系统:IBM z / OS,IBM i或LUW [Linux / Unix / Windows]。 在大多数情况下,它们具有基本相同的基本功能,但存在细微差别,而没有那么细微差别。

实际上,我们已经没有AS / 400了,尽管有些人仍然称其为AS / 400。 如果您的系统是最新的并且是最新的,则可能是在Power 7系统 (硬件)上使用IBM i 7.1 (操作系统)。 某些系统仍在IBM i 6.1或i5 / OS v5r4上。

DB2是OS的紧密集成且不可分割的组件,因此DB2的版本就是OS的版本。

确保使用适当版本的IBM i信息中心作为SQL参考。 不要为使用DB2 LUW或DB2 z / OS的站点而犯错误。

您最可能使用的连接软件是Windows的IBM i Access ,它包括一个与DB2 for i一起使用的.NET数据提供程序。 您将需要与IBM i OS版本匹配的版本,或者更高,但是不更低。 确保您已为您的版本安装了最新的Service Pack。

您可能需要查看连接字符串参数 您的系统管理员(或DBA, 如果系统中有一个)可能会建议适当的设置。

我建议使用“系统命名”来利用“库列表”,当您不使用模式名限定表或视图的资格时,DB2允许DB2在各种模式(“库”)中进行搜索,有点类似于Windows PATH环境变量。 我们倾向于使用这种方法,该方法可使代码在各种环境中更加灵活。

PS。 将适用于您在此站点上提出的问题。

您需要在“服务器信息”下指定用于连接的默认端口。 446 所以你的connectionString看起来像

string connStr = "Database=TestDB;User ID=demouser;Password=demouser5;Server=DemoServer:446;Connection Timeout=0";

请注意,您需要有效的DB2 Connect许可证才能连接到ISeries。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM