MySQL导入CSV选列时添加IGNORE 1 ROWS语法错误的正确写法
问题原因及修复方案
你遇到的运行异常是LOAD DATA语句的格式细节导致的,对应调整方式如下:
核心修改点
- 移除
IGNORE 1 ROWS与后续变量映射列表之间的多余空行,MySQL部分版本对LOAD DATA语句的分段空行容错率较低,会导致语法解析失败 - 如果你使用的CSV是Windows平台生成的,建议将换行符配置调整为
\r\n,避免换行识别异常导致首行忽略规则不生效
正确可运行语法
LOAD DATA LOCAL INFILE 'C:\\Users\\file\\upload.csv' INTO TABLE customer FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' IGNORE 1 ROWS (@col1,@col2,@col3) SET account_number=@col1, customer=@col2, customer_id=@col3;
额外验证建议
如果调整后仍然报错,可以先执行SHOW VARIABLES LIKE 'local_infile';确认参数为ON,同时检查CSV首行的表头字段数和你声明的3个变量数量完全匹配,无多余分隔符或空列。
内容的提问来源于stack exchange,提问作者q0mlm
相关产品推荐
相关产品推荐

