运行环境:
- Ubuntu16.0.4
- Qt5.5.1
- MySQL5.7
Qt程序连接数据库代码:
>
QSqlDatabase data_base = QSqlDatabase::addDatabase("QMYSQL");
data_base.setHostName("localhost"); //设置主机地址
data_base.setPort(3306); //设置端口
data_base.setDatabaseName("dbName"); //设置数据库名称
data_base.setUserName("userName"); //设置用户名
data_base.setPassword("password"); //设置密码
data_base.open()
连接数据库报如下错误:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QSQLITE2 QPSQL7 QPSQL
解决方法:
- 安装依赖库==>>命令行输入 apt install libqt5sql-mysql,(如果Qt版本是4,则apt install libqt4-sql-mysql)
- 查找文件位置==>>命令行输入 find / -name ibsqlmysql.so
- 从找到路径中大概有/usr/lib/xxx…/qt5/plugins/sqldrivers/libsqlmysql.so,这样类似的,路径可能不一样,但是文件一致
- 将此文件拷贝到Qt安装路径下的Qt5.5.1/xxx…/plugins/sqldrivers/ 下替换掉原有的文件
- 再将文件拷贝一份到你的运行软件的目录下
- 大功告成