qt5.2版本已经封装进去了mysql驱动,所以省去了我们现编译的麻烦!!!
#include <QCoreApplication> #include <QDebug> #include <QtSql/QSqlDatabase> #include <QStringList> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); QStringList drivers = QSqlDatabase::drivers(); qDebug() << drivers; return a.exec(); }
用Qt Create建立Qt Console Application,需要自行引入Qt5.2.0\5.2.0\msvc2012\lib下的Qt5Sql.lib
否则出现link错误。
建立普通的Qt widget直接pro文件写入QT += sql
mysql lib下的libmysql.dll copy 到\Qt5.2.0\5.2.0\msvc2012\bin下
#include <iostream> #include <Qtsql/QSqlDatabase> #include <Qtsql/QSqlQuery> #include <QtSql/QSql> #include <QDebug> int main(int argc, char *argv[]) { QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setDatabaseName("weather"); db.setUserName("root"); db.setPassword("123"); if(db.open()) { QSqlQuery query; query.exec("select * from weather"); while(query.next()) { int id = query.value(0).toInt(); QString str = query.value(1).toString(); qDebug() << id << "|" << str; } db.close(); } else { qDebug() << "opened error"; } return 0; }