MySQL社区

标题: qt连接mysql运行时出现QSqlQuery::exec:database not open,怎么解决 [打印本页]

作者: 薇儿    时间: 2013-10-15 16:01
标题: qt连接mysql运行时出现QSqlQuery::exec:database not open,怎么解决
已经编译mysql的驱动了,运行时提示已经编译出驱动
#include <QtCore/QCoreApplication>
#include<QtSql>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug()<<"Available drivers:";
QStringList drivers=QSqlDatabase::drivers();
foreach(QString driver ,drivers)
qDebug()<<"\t" << driver;
return a.exec();
}
但是在连接时出现QSqlQuery::exec:database not open
#include <QtCore/QCoreApplication>
#include<QtSql>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
db.setUserName("root");
db.setPassword("root");
db.setHostName("localhost");
db.setDatabaseName("xinxi");
QSqlQuery query(db);
query.exec("create table student (id int primary key,name varchar)");
query.exec("insert into student values(1,'xiaogang')");
query.exec("insert into student values(2,'xiaoming')");
query.exec("insert into student values (3,'xiaohong')");
return a.exec();
}





欢迎光临 MySQL社区 (http://www.mysqlpub.com/) Powered by Discuz! X3.2