我正试图将一个文件加载到云主机上的mysql表中,但它给我带来了语法错误。我的mysql版本是5.5.31。
mysql-u ykd202-p-e'将数据文件"home/phops/kosh/intx.csv"加载到表历史记录列中,以','可选地由'包围','由'逃离','行以'\n'忽略1行;'f2014
在上面的语句中,f2014是数据库名称。我得到的错误是
Enter password:
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' optinally enclosed by ' escaped by ' lines terminated by n ignore 1 lines' at line 1
您发布了以下代码:
mysql -u ykd202 -p -e 'LOAD DATA INFILE "home/folks/kosh/intx.csv" into TABLE history COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATE BY 'n' IGNORE 1 LINES;' f2014
然而,您的错误信息自相矛盾:
第1行出现错误1064(42000):SQL语法有错误;查看与MySQL服务器版本相对应的手册,了解在第1行"optically enclosed by"escaped by"lines terminated by n ignore 1 lines"附近使用的正确语法
1a)部分错误:optinally enclosed by
-拼写错误为"optically",应为"optionally"。
1b)部分代码:OPTIONALLY ENCLOSED BY '"'
然后。。。
2a)错误部分:lines terminated by n
和
2b)代码的一部分:LINES TERMINATE BY 'n'
-在TERMINATE的末尾缺少一个D
,它应该读作TERMINATED。
所以我将在这里冒险说,你需要修改你的代码为:
mysql -u ykd202 -p -e 'LOAD DATA INFILE "home/folks/kosh/intx.csv" into TABLE history COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY 'n' IGNORE 1 LINES;' f2014
- 阅读有关该主题的手册
编辑:
也可以试试:
mysql -u ykd202 -p -e "LOAD DATA INFILE 'home/folks/kosh/intx.csv' into TABLE history COLUMNS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY 'n' IGNORE 1 LINES;" f2014