ODBC连接字符串

时间:2012-02-21 20:01:50

标签: c# odbc connection-string

我在C#中编写了一个程序来使用OdbcConnection来提取一些数据:

using System.Data.Odbc;
......

OdbcConnection OdbcConn = 
                new OdbcConnection(Properties.Settings.Default.ConnectionString);
OdbcCommand cmd = new OdbcCommand();

//open connection 
if (OdbcConn.State != ConnectionState.Open)
{
    OdbcConn.Open();
}

在我的设置文件中,我有这个ConnectionString:

Dsn=****;uid=userID;pwd=password

但是我无法建立连接。我安装了IBM公司的iseries访问驱动程序,但如果我尝试MS访问,那么我就可以连接了。有什么建议吗?

3 个答案:

答案 0 :(得分:10)

如果有疑问(并且涉及连接字符串):http://www.connectionstrings.com/

答案 1 :(得分:4)

在Windows 64位计算机上,请确保检查C#代码是否在x86(32位),x64或"任何CPU"中编译。请注意,如果编译为"任何CPU,"它默认选择x64位驱动程序。

可以在 C:\ windows \ SysWOW64 \ odbcad32.exe 中找到32位驱动程序。可以在 C:\ windows \ system32 \ odbcad32.exe 找到32位驱动程序。

首先,确保使用我之前提供的路径验证您的连接是否与ODBC数据源管理器一起使用。即制作DSN并按照Turbot的建议进行测试。验证此连接后,您的连接字符串可以使用您刚创建的DSN,也可以使用DSN免费连接字符串。

有关快速参考,以下是使用ODBC驱动程序的DSN空闲连接字符串示例:

  

Driver = {Progress OpenEdge 11.3 Driver}; HOST = wfdscr11.wf.local; Port = 1234; DB = MyDatabaseName; UID = John; PWD = Doe

在这个例子中,我必须从我的C#代码连接到Progress数据库,这是我使用的连接字符串,无需指定DSN。您可以在下面看到驱动程序的名称是" Progress OpenEdge 11.3 Driver。"

enter image description here

答案 2 :(得分:0)

我总是想在控制面板中使用数据源(ODBC)验证连接(假设您在窗口环境中)。确保在ODBC选择中看到驱动器可用,并按照步骤测试连接。

如上所述,连接字符串网站可以让您了解哪些属性和特定驱动程序连接的格式