0

对于我正在开发的这个 asp.net 应用程序,我很难连接到这个普遍的服务器。现在,我可以在 Visual Studio 的服务器资源管理器中使用我的连接字符串访问和查看整个数据库,但是当我实际运行它时出现错误。这是我的代码:

    String myConnectionString = 
        "Driver={Pervasive ODBC Client Interface};servername=192.168.1.2;dbq=@Live;";
    OdbcConnection myConnection = new OdbcConnection(myConnectionString);
    OdbcCommand command = new OdbcCommand(myConnectionString, myConnection);

    try
    {
        myConnection.Open();
        OdbcDataReader reader = command.ExecuteReader();


        reader.Close();
        command.Dispose();
        myConnection.Close();
    }
    catch (OdbcException ex)
    {
        System.Diagnostics.Trace.WriteLine(ex.Message);
    }

这是我在运行时遇到的错误:

错误 [42000] [普遍][ODBC 客户端接口][LNA][普遍][ODBC 引擎接口]语法错误:驱动程序<< ??? >>={普遍的 ODBC 客户端接口}

任何帮助将不胜感激,即使这只是一个疯狂的猜测,因为我现在有点绝望。

谢谢

4

2 回答 2

3

该行:

OdbcCommand command = new OdbcCommand(myConnectionString, myConnection);

应该有你的 SQL 语句:

OdbcCommand command = new OdbcCommand("select * from table", myConnection);

而不是连接字符串。当您调用 ExecuteReader 行时,SQL 引擎会尝试执行不是有效 SQL 语句的连接字符串。

于 2011-05-31T19:25:58.863 回答
2

我总是使用 Pervasive ADO.NET 数据提供程序。它应该与数据库引擎一起安装,但如果不是,您可以在这里下载:http ://www.pervasivedb.com/psqlv11/pages/default.aspx

他们的网站上也有很多例子。

另外,尝试将连接字符串更改为基本形式并使用 DSN:

ServerDSN=DSNData;UID=username;PWD=password;Server=SERVERNAME

我对这个设置没有任何问题。

于 2011-05-31T18:08:03.113 回答