qt操作mysql時,使用addDatabase添加了一個新的連接名,代碼如下:
dataBase = QSqlDatabase::addDatabase("QMYSQL", "conndb");
此時,數據庫是可以打開的,但在查詢時返回false
QString sql = "SELECT * FROM measuredata";
QSqlQuery query;
bool bRet = false;
bRet = query.exec();
總結:執行查詢query時沒有指定db ,改爲:
QString sql = "SELECT * FROM measuredata";
QSqlQuery query(sql,dataBase);
bool bRet = false;
bRet = query.exec();
總結:如果想多個線程建立多個MySQL連接,就要使用 QSqlDatabase::addDatabase(“QMYSQL”, “conndb”); 建立多個連接名稱,而且查詢時,要指定數據庫即 QSqlQuery query(sql,dataBase);。