如何将命令行中的参数(数字)传递给MySQL查询文件?
mysql --host=<hostname> --user=<username> -p --port=#### < Query.sql > Output.csv
答案 0 :(得分:0)
您可能需要转换Query.sql
文件,然后将其传递给mysql
。 mysql
程序本身没有任何参数替换功能。
例如,在linux或freebsd中。
cat 'SELECT @numericParameter := 42;' >/tmp/param$$
cat /tmp/param$$ Query.sql | mysql --host=<hostname> --user=<username> -p --port=#### > Output.csv
rm /tmp/param$$
此shell脚本的第一行将一行SQL(设置参数)写入临时文件。
第二行将一行绑定在SQL文件的开头,并将结果传递给mysql
客户端程序。
第三行删除临时文件。
这样就可以在完成后不再修改SQL文件。这可能就是你想要的。