首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用于.NET的Informix连接字符串

用于.NET的Informix连接字符串
EN

Stack Overflow用户
提问于 2009-03-04 16:28:21
回答 4查看 11.2K关注 0票数 2

我们正在使用Informix数据库,并且使用ODBC成功地从.NET连接到它。我们使用的连接字符串是;

代码语言:javascript
代码运行次数:0
运行
复制
DRIVER={IBM INFORMIX ODBC RIVER};
UID=username; PWD=password;
DATABASE=our_database;
HOST=devsrv01;
SERVER=devsrv01_tcp;
SERVICE=ids9tcp2;
PROTOCOL=onsoctcp;
CLIENT_LOCALE=en_US.CP1252;
DB_LOCALE=en_US.819;

我们希望从ODBC中进行更改,并使用IBM和库作为在他们的网站上概述

我们使用的代码是;

代码语言:javascript
代码运行次数:0
运行
复制
string ConnectionString = "Database=our_database; Server=172.22.0.0:1528; UID=username; Password=password; ";

try
{                               
    IfxConnection conn = new IfxConnection(ConnectionString);
    conn.Open();
}
catch (IfxException ex)
{}

conn.Open()抛出异常;

错误08001 SQL30081N已检测到通信错误。正在使用的通信协议:"TCP/IP“。正在使用的通信API:“套接字”。检测到错误的位置:"172.22.0.0“。通信功能检测错误:"recv“。协议特定错误代码:"“、"”、"0“。SQLSTATE=08001

“啊哈!”你说。只需输入"PROTOCOL=onsoctcp;“,但这会使IfxConnection(ConnectionString);命令抛出一个ArgumentException。如果连接字符串包含任何无效的<field>=<value>设置,则引发此异常。如果我输入garbage=junk;在它中抛出相同的ArgumentException,这使我认为它不承认协议(或PRO)字段。

(FYI) 172.22.0.0是devsrv01的IP,不结束0.0。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-03-05 09:43:46

我偶然发现答案是包括;

代码语言:javascript
代码运行次数:0
运行
复制
Persist Security Info=True;Authentication=Server;

别问我为什么。我只是让它起作用。

谢谢大家的帮助。

票数 3
EN

Stack Overflow用户

发布于 2009-03-04 16:30:52

你查过http://www.connectionstrings.com/了吗?也许能提供一些洞察力。

票数 1
EN

Stack Overflow用户

发布于 2009-03-04 20:45:43

Informix .NET Povider指南4.10手册使用协议或PRO而不是协议。关键词区分大小写吗?这个表示法表明它可能是,但我对.NET还不太了解,无法确定。当你使用协议时,你会发现它可能是区分大小写的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/611345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档