如何使用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发布于 2022-06-02 10:59:24
错:DBQ=C:\databases\test.xlsx
正确:在addr中使用双\
https://stackoverflow.com/questions/19396204
复制相似问题