繁体   English   中英

在shell脚本中将csv上载到CSS的不良结果

[英]Undesired result in csv upload in shell script

我正在使用以下脚本将csv上传到我的数据库中

for _csv_file in ${_csv_files[@]}
do
mysql -h $_host -u $_db_user -p$_db_password $_db --local_infile=1 -e "use $_db" -e"
LOAD DATA LOCAL INFILE '$_csv_file'
IGNORE INTO TABLE csv_temp_table
FIELDS TERMINATED BY '\|'
OPTIONALLY ENCLOSED BY '\"'  
IGNORE 1 LINES 
(\`ProductType\`, 
\`Title\`, 
\`Publisher\`, 
     .
     .
     .
     .
     .  
\`Hi_Res_Image\` 
);"
 done  
 exit; 

但是发生的是,我在数据库中插入了632行,而不是csv中的63行! 我在这里做错了什么? 请帮我。 谢谢!

样本csv

ProductType|Title|Publisher|Navarre Publisher NBR|Platform-Format|Artist|Genre|Theme|Material Group|Box Size|Height(in)|Width(in)|Length(in)|Weight(lb)|CaseHeight(in)|CaseWidth(in)|CaseLength(in)|CaseWeight(lb)|Rating|UPC|Navarre P/N|Mfg P/N|Release Date|MSRP|Description|Lo_Res_Image|Hi_Res_Image
ACCESSORIES|VERSACHECK FORM  1000 BLUE PRESTIGE 500|GLOBAL BIZ FORCE|GBF|APP-BASED ACCESSORY||213|0|ACC-095|LG|2.800|8.900|11.400|6.600|9.300|11.900|13.100|27.400|E|814329506231|8026727|10BP02-6231|08/12/2008|$36.99|VersaCheck® - Form #1000 Business Voucher Check Refills are the perfect 
high-security blank check paper designed specifically to use with all VersaCheck® software products (except personal versions) to print custom business checks that comply 100% with ANSI X9 banking standards. 
 Save 50-80% or more per pack vs. pre-printed mail order checks.<br /><br />This 

您的csv中似乎有换行符。 我假设您的示例csv应该只包含一个条目(在标题下方)-具有长说明,并且没有Lo_Res_Image或Hi_Res_Image。

但是该描述包含两个换行符,因此,您期望数据库中的三个换行符结束。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM