Mysql 导入命令在 cmd 上运行时有效,但在直接传递参数时无效

标签 mysql command-line cmd

正如我从 documentation 中看到的那样, 最基本形式的导入命令是:

mysql.exe < example.sql

当我在 Windows 中从命令行运行它时它起作用了。但是当我启动进程时它不起作用mysql.exe< example.sql参数。例如,创建快捷方式并将其路径设置为 mysql.exe < example.sql不起作用,它只打印 mysql.exe 的帮助信息.

作为旁注,我在尝试运行以下 C# 代码时首先注意到这个问题:

new Process
        {
            StartInfo = new ProcessStartInfo
            {
                FileName = "mysql.exe",
                Arguments = "< example.sql",
            }
        }.Start();

最佳答案

部分< example.sql不构成 mysql.exe 的参数; <字符表示 redirection运算符,所以文件的内容 example.sql被重定向到 mysql.exe .

我想您必须将文件名更改为 cmd.exe/C "mysql.exe < example.sql" 的参数.考虑指定所有文件的完整绝对路径。

关于Mysql 导入命令在 cmd 上运行时有效,但在直接传递参数时无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40502911/

相关文章:

mysql - 如何加快多重内连接查询的速度?

mysql - 使用文本框输入将用户名和密码插入到连接字符串VB

linux - 从管道输入中 grep 多个搜索模式并递增地报告单个计数

windows - 有没有办法获取所有已安装程序的安装路径?

c# - C# 的命令提示符卡住了

powershell - 通过 Kudu 命令 API 运行 PowerShell 来编辑文件

php - 如何在 codeigniter 中插入查询后获取最后一个插入 ID

mysql - 我的 SQL 计数查询出了什么问题?

c# - 通过命令行仅构建 VS 安装项目

windows - 在 Windows 上创建桌面链接的脚本?