的IBM.Data.DB2

时间:2008-12-31 07:43:43

标签: .net db2

我使用连接到z / OS上的IMB DB2的IBM.Data.DB2提供程序在.net c#中创建了一个小型桌面应用程序。当我在一台机器上部署这个应用程序时,我遇到IBM DB Connect的运行时问题,然后我发现我必须安装DB2 Run-Time Client Lite,我这样做了。现在当我运行应用程序时出现错误“ERROR [42968] [IBM] SQL8002N Connect处理失败;找不到有效的产品许可证.SQLSTATE = 42968”

注意:我可以使用HIS库连接相同的数据库。

此致 Verybiztalker

1 个答案:

答案 0 :(得分:4)

您将无法使用任何 lite 版本访问z / OS DB2远程入口点。使用IBM JDBC驱动程序,您需要企业版连接到z / OS,这几乎肯定与C#相同 - 这是为了保护大型机免受那些没有得到祝福的所有客户的保护。 '企业之神'。

如果您没有有效的许可证,客户端甚至不会尝试连接到大型机。您收到的错误代码和状态与我描述的情况完全匹配。

IBM保护(或者更确切地说,允许他们的客户保护)他们的大型机DB2访问非常密切。我怀疑这与确保只有企业祝福的应用程序甚至尝试连接有关。没有正确许可证文件的JDBC客户端甚至不会将他们的请求出现在大型机TCP端口上,而是在客户端被阻止 - 大型机通常只对大多数桌面/服务器应用程序具有业务关键性梦想成为: - )。

使用IBM JDBC驱动程序,单个类型4驱动程序用于访问所有 DB2平台(LUW,iSeries,System z等),但实际上您必须安装许可证文件您的CLASSPATH用于特定平台,否则您将获得例外。

此许可证文件的格式为“db2jcc_cisuz.jar”,其中cisuz指定允许访问哪些平台(cu是最常见的但不允许访问iSeries或System z)。

您通常必须从IBM购买DB2 Connect才能获取这些文件,我怀疑它与.NET框架的情况类似。您可能会发现DB2 Connect产品具有.NET客户端驱动程序以及JDBC(我还没看过)。寻找该产品的“企业”版本,因为标准版本不太可能拥有System z许可证。