我在localhost:3306上运行了一个本地数据库,我使用MySQL Workbench访问该数据库。这很好,我可以创建alter,做我想做的任何事情。我有两个模式,“测试”和“测试2”。
我想通过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 Class reference
中的示例进行操作和m_db.open()始终返回false。我不太清楚我必须传递给addDataBase()或setDataBaseName。谢谢你的帮助!
编辑:如果我使用addDatabase(“QMYSQL”),则错误为“未加载驱动程序” 我在Windows 7上,使用Qt 4.8.1。
答案 0 :(得分:1)
没有安装MySQL预编译插件。你必须自己编译。或者您也可以使用ODBC网关到MySQL数据库,因为QODBC插件已安装或可以轻松编译(无需MySQL开发库)。