1

我在 localhost:3306 上运行了一个本地数据库,我使用 MySQL Workbench 访问它。这很好用,我可以创建更改,做我想做的任何事情。我有两个模式,“test”和“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。

4

1 回答 1

1

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

于 2012-06-14T20:16:30.650 回答