【问题标题】:ODBC ConnectionStringODBC 连接字符串
【发布时间】:2012-02-21 20:01:49
【问题描述】:

我用 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 corp 的 iseries 访问驱动程序,但如果我尝试 MS 访问,那么我可以连接。有什么建议吗?

【问题讨论】:

    标签: c# odbc connection-string


    【解决方案1】:

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

    【讨论】:

    • 只需在顶部附近单击您正在使用的数据库类型,即可查看您缺少的一个很好的示例(我注意到您没有告诉它在哪里连接,即名称或 IP)跨度>
    • 有没有人知道如何使用驱动免费建立连接DSN
    • 如果我要在远程服务器中使用 Access 设置 ODBC 怎么办?
    【解决方案2】:

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

    32 位驱动程序位于 C:\windows\SysWOW64\odbcad32.exe。 32 位驱动程序位于 C:\windows\system32\odbcad32.exe

    首先,确保您使用我之前提供的路径验证您的连接与 ODBC 数据源管理器一起工作。 IE。制作一个 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”。

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多