qt4 - 使用 QProcess 恢复 MySQL 数据库,无法真正使用像 '<' 这样的简单重定向

标签 qt4 mysql database-restore qprocess

因此,首先通过 QFileDialog 检索文件名,并将其放入 fName 中,然后:

  QProcess *proc = new QProcess ();
  QStringList arguments;
  arguments << "-u" << "USER_NAME"
            << "-pPASS_WORD" << "<"
              << fName;
#ifdef WIN32
    proc->start("mysql.exe" , arguments);
#else
    proc->start("mysql" , arguments);
#endif

但这不起作用,我总是看到“mysql --help”的输出,似乎 提供了错误的参数。但是,请手动执行此操作。

最佳答案

您不应该使用参数重定向标准输入。使用setStandartInputFile(const QString & fileName)相反。

关于qt4 - 使用 QProcess 恢复 MySQL 数据库,无法真正使用像 '<' 这样的简单重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7663149/

相关文章:

windows - 没有窗口图标的 Qt 对话框(系统菜单)

java - 是否有可能将内部联接选择结果转换为嵌套列表 JSON?

sql-server - 无法还原 Team Foundation 服务器数据库

mysql - 运行缓慢的 MySql 还原 - 比备份速度慢 10 倍,但仍在运行

python - 无法发送另一个线程中对象的已发布事件

qt - 如何在 qtHaskell 中使用 `itemDoubleClicked(QTreeWidgetItem*,int)` 信号

qt - 扩展 Qt 布局 : how to put a widget on the right side and the let the other widget to fully fill the left?

mysql - 在 Syfmony2 中使用查询生成器排序时也获取计数

php - if 语句不适用于 MYSQL 验证检查

mysql - 当表有数千万条记录时,使用 "mysql mydb < mydb.sql"重新创建 MySQL DB 非常慢。如何改进呢?