You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

phpMyAdmin导入CSV文件到MySQL出现数据截断错误是什么原因?

报错核心原因
  • 分隔符配置不匹配:你的CSV文件字段实际使用英文逗号,分隔,但执行的LOAD DATA导入语句中配置的字段分隔符为分号;。MySQL会将整行数据识别为第一个id字段的输入值,远超出bigint类型的长度限制,因此触发Data truncated for column 'id'报错。
  • 字段数量不匹配:contacts表总计12个字段,但你提供的CSV每行只有10列数据,缺少created_at、updated_at两个字段的对应值,因此触发Row 1 does not contain data for all columns报错。
  • 未配置列映射规则:导入语句没有指定CSV列对应的表字段,也没有对缺失的字段配置自动填充规则,MySQL会强制要求输入数据匹配全表字段数量。
修复方案

你可以按照以下步骤调整导入配置:

  1. 在phpMyAdmin的导入设置页,将CSV字段分隔符从分号;改为英文逗号,。
  2. 修改LOAD DATA导入语句,补充列映射和缺失字段的填充规则,参考语句如下:
LOAD DATA INFILE 'C:\\xampp\\tmp\\phpF39A.tmp' 
INTO TABLE `contacts` 
FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' 
LINES TERMINATED BY '\r\n'
(id, name, lastname, position, mobile_no, mobile_no2, descriptionMobile, descriptionMobile2, email, status)
SET created_at = CURRENT_TIMESTAMP(), updated_at = CURRENT_TIMESTAMP();
  1. 若CSV中的NULL被识别为字符串而非空值,可以在导入前将CSV内的NULL替换为空,或导入后执行批量更新修正。

内容的提问来源于stack exchange,提问作者matuco1998

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 05:36:08