运行 .sql 文件与 Inno Setup

Run .sql file with Inno Setup

我正在尝试使用 Inno Setup 运行 .sql 文件。

[Run]
Filename: "C:\Program Files\HeidiSQL\heidisql.exe"; \
    Parameters: "-u root -p Password -h localhost --execute=""G20 Standard.sql"""; \
    WorkingDir: {app}; StatusMsg: Loading Database; Flags: runhidden

它在 HeidiSQL 中加载 g20 standard.sql,但它不执行该文件。它给出错误:

Please specify directory to watch.

我可以关闭 this error and execute file manual 之后。

这个错误来自 HeidiSQL 部分,因为 HeidiSQL 图标出现在 Windows 任务栏中,我可以通过单击图标来最小化该错误。

我在这里遗漏了什么? 看起来像是来自 HeidiSQL 的错误,我应该把这个问题移到那个市场吗?

我在 HeidiSQL documentation 中没有看到任何 --execute 开关 --- 实际上似乎没有任何方法可以从 HeidiSQL 命令行执行 .sql 脚本。

您应该使用 MySQL 来执行您的 .sql

  • MySQL install and load database on Inno Setup script
  • Calling MySQL from inside an Inno Setup project

HeidiSQL 当然可以 运行 在命令行上使用 .sql 文件名,但是您必须删除该文件周围的 --execute 内容,并且该文件应该有一个完整路径:

Filename: "C:\Program Files\HeidiSQL\heidisql.exe"; \
    Parameters: "-u root -p Password -h localhost ""{app}G20 Standard.sql"""; \
    WorkingDir: {app}; StatusMsg: Loading Database; Flags: runhidden

另一方面,如果您不想要可见的 window,通过 mysql.exe 到 运行 .sql 文件更有意义。