Red Hat linux版本6.9中的ODBC问题:

时间:2018-01-24 06:41:51

标签: qt redhat unixodbc

ODBC问题

The database reported an error: [unixODBC][Driver Manager]Data Source name not found, and no default driver specified

如下所示,QT应用程序尝试连接DBF类型的数据库文件(.dbf),当我们尝试执行应用程序时,我们得到了上述错误。

QSqlDatabase db;
db = QSqlDatabase::addDatabase("QODBC");

QString str("DRIVER={Microsoft dBase Driver (*.dbf)}; DBQ=/path/to/dbf/files");

db.setDatabaseName(str);

if(db.open())
{
    ...
}
else
{
    ...// Failure
}

推荐链接(https://www.easysoft.com/support/kb/kb01039.html)并按照以下步骤操作:

  1. 配置文件odbc.iniodbcinst.ini包含相应的内容。
  2. 使用ODBCSYSINIODBCINSTINIODBCINI
  3. 导出变量/etc/odbc.ini/etc/odbcinst.ini/home/user/.odbc.ini
  4. 从我们导出变量的同一个shell中,尝试执行应用程序但遇到错误"数据库报告错误:[unixODBC][Driver Manager]Data Source name not found, and no default driver specified
  5. 请查找odbc.iniodbcinst.ini

    的内容

    odbc.ini档案:

    [ODBC Data Sources]
    TestODBC=MyODBCDriver
    
    [TestODBC]
    Driver=path/to/driver file
    DataDirectory=path/to/where my dbf files resides
    
    [Default]
    Driver=path/to/driverfile
    DataDirectory=path/to/where my dbf files resides
    

    odbcinst.ini档案:

    [ODBC Drivers]
    MyODBCDRIVER=Installed
    
    [MyODBCDriver]
    Description=ODBC Driver
    Driver=/path/to Driver file
    
    [ODBC]
    Trace = Yes
    

    请提供解决问题的任何建议或解决方案

0 个答案:

没有答案