防止多次连接,断线自动重连。 bool connectDatabase()
{
const QString connName = "qt_sql_default_connection";
if (QSqlDatabase::contains(connName))
{
db = QSqlDatabase::database(connName);
qDebug() << "contains connName" << connName;
}
else
{
db = QSqlDatabase::addDatabase("QMYSQL", connName);
db.setHostName("127.0.0.1");
db.setDatabaseName("abc");
db.setPort(3306);
db.setUserName("root");
db.setPassword("abc123");
db.setConnectOptions("MYSQL_OPT_RECONNECT=1"); // 断线自动重连
}
if (!db.isOpen())
{
if (!db.open())
{
qDebug() << "error open database because" << db.lastError().text();
return false;
}
}
return true;
}