2
所以我想创建一个脚本,我可以运行,将执行到一个表的CSV文件的批量导入。Bash脚本负载数据infile MySQL
我无法使脚本正常工作。
这里是我运行脚本:
#!/bin/bash
for f in *.csv
do
"/opt/lampp/bin/mysql -e use test -e LOAD DATA LOCAL INFILE ("$f") INTO TABLE temp_table FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 LINES (DATE, TIME, SITE_NAME, SITE_IP, TOTAL_TALKTIME, EDGE_UL_BYTES, EDGE_DL_BYTES);"
done
当我跑我收到以下错误消息的脚本:
./script.sh: line 5: unexpected EOF while looking for matching `''
./script.sh: line 7: syntax error: unexpected end of file
的LOAD DATA LOCAL INFILE命令工作正常,直接在MySQL 。
你并不真的需要转义换行符在这种情况下。 –
好点,mysql不关心。 –
第1行的错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在第1行的LOAD DATA LOCAL INFILE(“csv_name.csv”)INTO TABLE temp_table'处使用正确的语法 – XFerrariX