參考http://blog.csdn.net/lynfam/article/details/6194275
文章中備份數據庫代碼如下:
- QString Cmd = QString("mysqldump.exe")
- QStringList argument;
- argument<<"--add-drop-table"<<"-uUsrName"<<"-pUsrPsd"<<"test";
- QString Path = QString("%1").arg("d://backup.Sql");
- QProcess *poc=new QProcess;
- poc->setStandardOutputFile(Path);
- poc->start(Cmd,argument);
原來是沒有找到mysqldump.exe文件的原因
代碼修改爲:
QString Cmd = QString("C:\\Program Files\\MySQL Server 5.6\\mysqldump.exe") QStringList argument; argument<<"--add-drop-table"<<"-uUsrName"<<"-pUsrPsd"<<"test"; QString Path = QString("%1").arg("d://backup.Sql"); QProcess *poc=new QProcess; poc->setStandardOutputFile(Path); poc->start(Cmd,argument);
還原數據的代碼如下:
- QString Cmd = QString("C:\\Program Files\\MySQL\\MySQL Server 5.6\\bin\\mysql.exe")
- QStringList argument;
- argument<<"-uUsrName"<<"-pUsrPsd"<<"test";
- QString Path = QString("%1").arg("d://backup.Sql");
- QProcess *poc=new QProcess;
- poc->setStandardInputFile(Path);
- poc->start(Cmd,argument);
- poc->waitForFinished(-1);
- QMessageBox::information(0,"","還原完成!");