• 8802阅读
  • 7回复

[提问]如何使程序在一台未安装QT的机器上连接数据库 [复制链接]

上一主题 下一主题
离线zhuxun37
 
只看楼主 倒序阅读 楼主  发表于: 2008-07-20
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2011-01-07) —
我的程序在自己的机器上是可以运行的,在一台未安装QT的机子上,程序是可以运行的,在连接数据库时出现如下错误:
  1. Driver not loaded


这个是什么错啊?在连接数据库时,还需要哪些操作呢?

注:开发环境是 win+QT4.4+MySQL5,编译使用的是动态连接方式。
离线weizhy
只看该作者 1楼 发表于: 2008-07-20
除了Qt的支持外(看看前面的帖子)
需要加Qt的Sql插件库和配置文件,具体是:

假设你的可执行文件为a.exe,所在文件夹为: folder
1.将Sql的库和plugin文件夹放在folder中,相对路径和Qt目录下的相对路径相同
2.在folder文件夹下新建文件 qt.conf ,可以无内容

就OK

你的问题是Qt没有找到默认的Sql库路径配置,加入qt.conf就指定了Qt路径配置使用当前路径
我的ODBC库路径就是这么搞定的

具体可以参考 assistant->Using qt.conf
离线blusherbear

只看该作者 2楼 发表于: 2008-07-20
检查一下必须的动态库是否一起发布了
离线zhuxun37
只看该作者 3楼 发表于: 2008-07-21
谢谢楼上的两位,我试试看
离线ny13524
只看该作者 4楼 发表于: 2008-09-18
1楼weizhy 的方法确实管用,不知道为何要把plugin文件夹给全拷贝过来,能否再细讲解下吗?多谢
离线hgl2073
只看该作者 5楼 发表于: 2011-03-15
回 1楼(weizhy) 的帖子
啊,也正找这个解答呢,多谢。
不过经试验,可以稍微改进一下:
不必拷贝整个plugin文件夹,因为很大(4.7.0有50M左右),对程序来说负担太大,试过后发现只需要保留这一个文件即可:(对于使用sqlit库的人而言,其他数据库使用者使用对应文件即可)
../plugin/sqldrivers/qsqlite4.dll
但是不能将qsqlite4.dll直接放在程序所在目录,必须按这个路径放置。
离线hgl2073
只看该作者 6楼 发表于: 2011-03-15
回 4楼(ny13524) 的帖子
不用全拷,拷贝对应数据库的dll文件即可,但要按这个目录
离线raymond
只看该作者 7楼 发表于: 2012-03-21
为什么我的目录下面没有.dll文件,而在opt中有库文件和dll文件?
快速回复
限100 字节
 
上一个 下一个