关于c++连接sql server 2008的问题

骑着摩托上下班 2017-06-02 12:40:43
数据库是sql server 2008 本机数据源也配置好了,测试通过。开发工具是vs2008
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再调用?

实在想不明白了,请高人指教,谢谢
...全文
526 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
ding yixia
  • 打赏
  • 举报
回复
c++使用sql server,试过了qt,驱动没有;ODBC接口,现场每次写入都是全新打开连接;ADO写入成功概率不如前者高。。。
赵4老师 2017-06-05
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下; 所以要注意: 在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
  • 打赏
  • 举报
回复
引用 1 楼 oyljerry 的回复:
还有可能就是项目类型影响了库的连接
这是什么原因,还真不懂。 有没有类似经历的同学,请教
oyljerry 2017-06-02
  • 打赏
  • 举报
回复
还有可能就是项目类型影响了库的连接

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧