今天想试试Qt如何连接数据库的。
谁知怎么写完了提示driver not loaded我就郁闷了。
我自己是 VS2010 + Qt4.8.4 + MySQL5.1 的环境
网上查到是 C:Qt4.8.4pluginssqldrivers 里没有MySQL的dll以及lib文件。所以要自己编译下。
1.通过Qt 4.8.4 Command Prompt命令行进入($QtDir$)srcpluginssqldriversmysql
2.由于MySQL的绝对路径有空格,makefile无法准确找到,因此在任意盘符根目录下新建文件夹MySQL(例如C:MySQL),并将($MySQLDir$)inlcude与($MySQLDir$)lib文件夹拷贝至该文件夹下
2.输入命令
qmake -o makefile "INCLUDEPATH+=c:MySQLinclude" "LIBS+=c:MySQLliboptlibmysql.lib" mysql.pro
nmake
3.查看($QtDir$)pluginssqldrivers文件夹下是否生成sqlmysql4.dll、qsqlmysql4.lib、qsqlmysqld4.dll、qsqlmysqld4.lib
- QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
- db.setHostName("localhost");
- db.setDatabaseName("mydb");
- db.setUserName("root");
- db.setPassword("");
- if (!db.open())
- QMessageBox::information(this,tr(""),db.lastError().text());
https://blog.csdn.net/kfbyj/article/details/8820652