关于QT数据库自动连接的问题!!!!
现在我有个程序是连接的远程数据库,一旦拔掉网线,再插上的话,数据库不能自动连接,还得重启程序才能连接上,我想求一个,不用重启就会自动连接上的方法??
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setHostName(HostName);
db.setDatabaseName(DatabaseName);
db.setUserName(UserName);
db.setPassword(Password);
if(!db.open())
{
QMessageBox::critical(0, QObject::tr("Error"),
QObject::tr("The database reported an error: %1").arg(db.lastError().text()));
return false;
}
return true;
连接数据库的语句!!!是这个!!! qt database
[解决办法]
QSqlDatabase db;
if(QSqlDatabase::contains("user")){
db = QSqlDatabase::database("user");
}else{
db = QSqlDatabase::addDatabase("QMYSQL", "user");
db.setHostName("localhost");
db.setDatabaseName("user");
db.setUserName("root");
db.setPassword("");
db.exec("SET NAMES 'GBK'");//utf-8
db.open(); // 尝试连接数据库
}