5

QODBC/QODBC3 Qt ドライバーを使用して Excel ファイルに正しく接続するにはどうすればよいですか?

まず、そのようなドライバーを作成しました(cmdで)

>cd %QTPATH%\src\plugins\sqldrivers\odbc

>qmake odbc.pro

>nmake

次に、qsqlodbc4.dllファイルが作成されました %QTPATH%\plugins\sqldrivers

このコードを使用しました

    #include <QApplication>
    #include <QtGui>
    #include <QtSql>
    
    int main(int argc, char** argv)
    {
        QApplication app(argc, argv);
        //QComboBox myCombo;
    
        //excel stuff
        QSqlDatabase dbExcel = QSqlDatabase::addDatabase("QODBC","dbExcel");
            // i thought mayde that would work
           // dbExcel.setDatabaseName("C:\databases\test.xlsx");

           //i tried connection string too
          dbExcel.setDatabaseName(QString("DRIVER={Microsoft Excel Driver (*.xlsx)}; READONLY=FALSE; FIL={MS Excel}; DBQ=C:\databases\test.xlsx"));
        
        if(!dbExcel.open())
        {
            QSqlError er = dbExcel.lastError();
            QMessageBox::information(0, "Error", er.text());
        }
    
    
        
         //...................
    
        
    
        return app.exec();
  }

そこで私はそのエラーを吐き出しました(それは次のように翻訳されます:

[Microsoft][ODBC driver manager] Data source not found and default driver not set. QODBC3: Unable to connect

)

エラー

UPD

また、ドライバーが利用可能であると書かれています

QSqlDatabase: available drivers: QIBASE QSQLITE QODBC3 QODBC
4

0 に答える 0