2

我正在尝试连接到 Informix DB 服务器 (v10),并且正在使用 Informix Data Provider .NET 类库通过 .NET 应用程序建立连接并检索数据。

最初,我在本地机器上设置了一个 Informix 服务器来对这个库进行一些测试。有趣的是,有两种情况,一种连接字符串有效,另一种无效。

场景 1:服务器设置为通过协议 'drsoctcp' 连接,连接字符串如下:

connectionString="Server=my.server.com:9088; Database=mytestdb; User ID=user; Password=mypass; Persist Security Info=True; Authentication=Server;"

以上工作,因为正在使用的协议是'drsoctcp'

场景 2:服务器设置为通过协议“onsoctcp”进行连接,连接字符串与上面完全相同。连接将不起作用,抛出的错误是:

错误 [08001] [IBM] SQL30081N 通信错误或已检测到。正在使用的通信协议:“TCP/IP”。正在使用的通信 API:“SOCKETS”。检测到错误的位置:“fe80::1:10 9:c212:ce44%10”。检测错误的通信功能:“recv”。协议特定错误代码:“ ”、“ ”、“0”。SQLSTATE=08001

“my.server.com”是我在 LAN 上识别的机器的名称。我还尝试使用 localhost 或 IP 地址(127.0.0.1 和外部 IP 地址),但仍然没有成功。

真正的问题在这里:我希望连接的 Informix 服务器(完全在不同的网络上)可供我通过 onsoctcp 协议进行连接。

有没有人设法通过 onsoctcp 协议与 .NET Informix 提供程序类连接?

提前致谢。

4

1 回答 1

1

你检查过 ConnectionStrings.com 吗?在此页面上,他们使用以下onsoctcp选项:

数据库=myDataBase;主机=192.168.10.10;服务器=db_engine_tcp;服务=1492; 协议=onsoctcp;UID=myUsername;密码=myPassword;

于 2012-05-30T09:52:10.317 回答