1、使用Qt 4.8.5连接,
QStringList list = QSqlDatabase::drivers(); //list只有QOCI
QSqlDatabase m_db = QSqlDatabase::addDatabase("QODBC");
QSqlError err = m_db.lastError();
提示"Driver not loaded"
照网上的方法,在运行目录下增加了文件夹sqldrivers,并加入qsqloci4.dll、qsqlmysql4.dll、qsqlodbc4.dll,还是只有QOCI,请问是什么问题?qsqlodbc4.dll是网上找的qt exe解压出来的
2、Qt失败后,尝试使用SQLConnect,一直返回-1,网上搜了下,按照他说的,在空项目里是成功了,QtApplication不行,这,难道把建个空项目,然后编译成lib再调用?
实在想不明白了,请高人指教,谢谢
5 个解决方案
#1
还有可能就是项目类型影响了库的连接
#2
这是什么原因,还真不懂。
有没有类似经历的同学,请教
#3
在64位Windows下:
64位exe和dll在目录c:\windows\sys tem32目录下;
32位exe和dll在目录c:\windows\sys wow64目录下;
所以要注意:
在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。
且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
在win64位系统下设置32位程序使用的数据库别名要用c:\windows\syswow64\cliconfg.exe
在win64位系统下设置32位程序使用的系统DSN要用c:\windows\syswow64\odbcad32.exe
64 位 Windows 平台注意点之文件系统重定向 http://www.cnblogs.com/jiake/p/4981555.html
64 位 Windows 平台注意点之注册表重定向 http://www.cnblogs.com/jiake/p/4956218.html
64位exe和dll在目录c:\windows\sys tem32目录下;
32位exe和dll在目录c:\windows\sys wow64目录下;
所以要注意:
在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。
且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
在win64位系统下设置32位程序使用的数据库别名要用c:\windows\syswow64\cliconfg.exe
在win64位系统下设置32位程序使用的系统DSN要用c:\windows\syswow64\odbcad32.exe
64 位 Windows 平台注意点之文件系统重定向 http://www.cnblogs.com/jiake/p/4981555.html
64 位 Windows 平台注意点之注册表重定向 http://www.cnblogs.com/jiake/p/4956218.html
#4
c++使用sql server,试过了qt,驱动没有;ODBC接口,现场每次写入都是全新打开连接;ADO写入成功概率不如前者高。。。
#5
ding yixia
#1
还有可能就是项目类型影响了库的连接
#2
这是什么原因,还真不懂。
有没有类似经历的同学,请教
#3
在64位Windows下:
64位exe和dll在目录c:\windows\sys tem32目录下;
32位exe和dll在目录c:\windows\sys wow64目录下;
所以要注意:
在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。
且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
在win64位系统下设置32位程序使用的数据库别名要用c:\windows\syswow64\cliconfg.exe
在win64位系统下设置32位程序使用的系统DSN要用c:\windows\syswow64\odbcad32.exe
64 位 Windows 平台注意点之文件系统重定向 http://www.cnblogs.com/jiake/p/4981555.html
64 位 Windows 平台注意点之注册表重定向 http://www.cnblogs.com/jiake/p/4956218.html
64位exe和dll在目录c:\windows\sys tem32目录下;
32位exe和dll在目录c:\windows\sys wow64目录下;
所以要注意:
在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。
且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
在win64位系统下设置32位程序使用的数据库别名要用c:\windows\syswow64\cliconfg.exe
在win64位系统下设置32位程序使用的系统DSN要用c:\windows\syswow64\odbcad32.exe
64 位 Windows 平台注意点之文件系统重定向 http://www.cnblogs.com/jiake/p/4981555.html
64 位 Windows 平台注意点之注册表重定向 http://www.cnblogs.com/jiake/p/4956218.html
#4
c++使用sql server,试过了qt,驱动没有;ODBC接口,现场每次写入都是全新打开连接;ADO写入成功概率不如前者高。。。
#5
ding yixia