Solved Is it not possible to open M.S. access file?
-
i already tried downloaded and intalled the drivers, even though i have M.S Office installed on my computer. But getting the same error.
-
Hi @rockon209
which Qt Version do you use? -
@Andy314
I am using Qt 5.7.0 -
Hi @rockon209
the QtCompany had the idea to do not distribute the binarys for the ODBC driver anymore. That was in Version 5.5 and 5.6 I think. I initiated a discussion about it. The result was that the driver should be integrated again. I dont know if this is in 5.7 really the case.Look if you have in the path like C:\Qt2\5.6\msvc2015\plugins\sqldrivers
the qsqlodbc files. -
yes the file is present in the path.
-
Hello @rockon209,
oh I am happy :-)Now your Problem:
It must work ! I use it since 1 year.We must find the error systhematic.
First you should try a connection via the windows Windows-ODBC tool.
I there is something wrong we must not look on Qt. -
@Andy314
How to do that bcoz i new to this database access. I dont know how it works. Could you help me? -
Hi @rockon209
Search in Windows for "ODBC".
Open the Program, dont know the english name. Something like "ODBC-Datasource 32-bit"
Tabpage Drivers: Is there a entry like Microsoft Access Driver (*.mdb, *.accdb) ?more later...
-
Hi.
Perhaps, you have a very minor problem.
Compare the connection strings below.db.setDatabaseName("Driver={Microsoft Access Driver(*.mdb, *.accdb)}; DBQ=C:/MyFolder/Database1.accdb;"); // It's not OK!
db.setDatabaseName("Driver={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=C:/MyFolder/Database1.accdb;"); // It's OK!
The ODBC driver is installed by default on Windows.
-
-
Jup, use exactly the name shown in the ODBC tool !!!!!
-
ok thank you very much guys it worked i was not using the proper syntax.
Thank you very much. -
Go in the ODBC tool to the File-DSN tab.
Top right button like Add or Create new
choose the Access odbc driver -> click >>
as next set a filename -> click >>
next windows choose a *.accdb file
ready -> you have a DSN file which defines the connection.I thought the ODBC tool has a function to test this connection directly, but it has not. So a file.dsn testing program would be nice ....
I found out a testing methode with Excel Data Tab->Extern Data -> Data connection Assistant -> ODBC DSN -> and choosed the pervious integrated dsn-file.Nevertheless you should use the content of this file as the connect string in Qt.
only DRIVER and DBQ are important here.and you should check in Qt:
```
bool ok=QSqlDatabase::isDriverAvailable("QODBC");
if(!ok)
{
ErrorMsg="No ODBC driver available!";
return 1;
} -
i guess your os is win7 x64 and you are using Qt 5.7 x64 with access 2013 x86
try installing access 2013 runtime x64 , you can download it from microsoft