QProcess p(this);
p.setWorkingDirectory("C:/Program Files/MySQL/MySQL Server 5.7/bin");//切换工作目录
p.setProgram("cmd");
QStringList argument;
//QString("mysqldump -h127.0.0.1 -uroot -proot -t test_psq test --where=\"id>%1\" test1 --where=\"id>%2\" > d:/1234.sql").arg(a).arg(b);
若没有where 条件可以不用存带脚本文件, 直接 存到argument中
argument<<"/c"<<"mysqldump -h127.0.0.1 -uroot -proot -t test_psq test";//若没有没有where条件, 有where调价, 可以把命令存储到bat脚本,然后运行脚本。因为QProcess 不支持 引号,
p.setArguments(argument);
p.start();
p.waitForStarted(); //等待程序启动
p.waitForFinished();//等待程序关闭
p.close();
//以上是备份, 亲测有效
以下还原
mysql -hhostname -uusername -ppassword databasename < backupfile.sql//使用这个命令