報錯是這樣的:
QSqlDatabase: MYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
這種情況說明程序是可以找到驅動的,但是驅動加載不成功,所以網上大家說的比較多的是驅動不匹配,可參見這篇文章https://blog.csdn.net/tenlee/article/details/43614241
但今天我在把自己的程序部署到其他機器上時,發現版本什麼的應該都是對的,自己的開發機器上是好的,libmysql.dll也都放了,但還是會報前面的錯誤。
最後發現把C:\Program Files\MySQL\MySQL Server 8.0\bin加到系統路徑中就不會報錯,所以自然聯想到是這個文件夾下的三個dll文件的問題,把這三個dll文件加入到exe文件的同級目錄下就可以了。
應該是缺少這三個dll導致驅動加載異常,產生報錯。可能在不同的場景下解決方法都不一樣吧,這裏提供一下我的解決方案。用的版本都是比較新的版本,所以可能問題點和別人的不太一樣。