使用 Qt 连接到本地数据库

Connecting to Local Database with Qt

本文关键字:数据库 Qt 连接 使用      更新时间:2023-10-16

我有一个本地数据库运行在本地host:3306上,我用MySQL Workbench访问它。这工作正常,我可以创建 alter,做任何我想表的事情。我有两个模式,"测试"和"test2"。

我想通过Qt连接到它,这是我的代码:

QSqlDatabase m_db = QSqlDatabase::addDatabase("QPSQL"); 
m_db.setHostName("localhost");
m_db.setDatabaseName("test");
m_db.setPort(3306);
m_db.setUserName("root");
m_db.setPassword("MyAwesomePasswordThatIsUnHackableAndNotMyBirthdayAtAll...");
bool ok = m_db.open();

我遵循了此处找到的示例 QSqlDataBase 类参考

并且 m_db.open() 总是返回 false。我不太确定我必须传递给addDataBase()或setDataBaseName。感谢您的帮助!

编辑:如果我使用addDatabase("QMYSQL"),错误是"驱动程序未加载"我在Windows 7上,使用Qt 4.8.1。

没有安装MySQL预编译插件。你必须自己编译它。或者您也可以使用 ODBC 网关连接到您的 MySQL 数据库,因为 QODBC 插件已安装或可以轻松编译(无需 MySQL 开发库)。