我有以下批处理文件:
@ECHO on
cd "C:\Program Files\MariaDB\mariadb\bin"
mysql -u root < "C:\database_setup.sql"
当我直接在命令行中运行命令时,它工作正常。当我运行这个批处理文件时,我得到它正在尝试执行:
mysql -u root 0<"C:\database_setup.sql"
为了解决这个问题,我试图通过以下方式逃避:
mysql -u root ^< "C:\database_setup.sql"
它在控制台中似乎是正确的,但是它正在转储mysql选项而不是插入database_setup.sql的内容。
我在想这是因为“&lt;”实际上被称为字符串,因为我正在逃避它而不是重定向操作符。
如何在批处理文件中完成此命令的运行(直接在控制台中正常工作)?
答案 0 :(得分:3)
以下解决方法可以帮助您:
mysql -u root -e "SOURCE C:\database_setup.sql"
以下内容也应该有效:
type C:\database_setup.sql | mysql -u root