当我运行 SQL 脚本以使用命令行从 MySQL 数据库中导出数据时,出现上述错误。 SQL 查询在 phpMyAdmin 中运行时运行良好,但仅当从命令行运行时会引发错误。
这是我使用的命令行:
cat my_export | mysql -uxyzuser -pabcpassword mydb > export072911.txt
my_export
中的代码如下:
SELECT CONCAT( custfirstname, ' ', custlastname ) AS fullname, custcompany, \
SPACE( 10 ) AS custtitle, custaddressone, custaddresstwo, custcity, custstate, \
custzip, SPACE( 10 ) AS dummy, custphone, SPACE( 10 ) AS custfax, custemail, \
event_id, SPACE( 10 ) AS ticket1, SPACE( 10 ) AS ticket2, \
SPACE( 10 ) AS ticket3, SPACE( 10 ) AS ticket4, orderdate, b.quantity, \
FROM order_master a \
LEFT JOIN order_detail b ON b.order_master_id = a.id \
LEFT JOIN customer c ON c.email = a.custemail \
WHERE a.orderdate > '2010-12-01'\
AND a.event_id = '30' \
AND a.orderstatus = 'O' \
AND b.litype = 'ITEM' \
AND b.reftag = 'PKG' \
ORDER BY a.orderdate DESC;
最佳答案
您可以安全地删除所有反斜杠并使用输入重定向而不是管道。如果您将 SQL 作为 shell 变量使用,则需要反斜杠,而不是用于管道或重定向。
mysql -uxyzuser -pabcpassword mydb < my_export > export072911.txt
更新 经过我自己的快速测试,只要删除反斜杠,管道看起来就像输入重定向一样工作。
关于mysql - 第 1 行错误 : Unknown command '\' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6878818/