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

使用LOAD DATA INFILE导入数据时Error Code 1264报错求助

Error Code 1264: Out of Range Value for total_cases_per_million When Using LOAD DATA INFILE

报错原因分析

  • 字段类型范围限制:你的表中total_cases_per_million定义为decimal(12,6),该类型总位数为12(包含整数和小数部分),其中小数位占6位,因此整数部分最多仅能容纳6位数字(最大值为999999.999999)。若第2036行的实际值整数部分超过6位(比如1000000.000),就会触发超出范围错误。
  • 数据包含非数字字符:如果CSV中该字段的值带有千分位逗号(如"101,028.926"),即使被双引号包裹,MySQL解析时也无法将其转换为有效的decimal数值,进而触发1264错误。
  • 表结构与定义不符:可能存在建表语句执行异常,或后续修改过表结构,导致total_cases_per_million的实际类型比decimal(12,6)更小(比如decimal(10,6)),无法容纳目标数值。

解决方法

1. 验证并修正数据或字段类型

  • 先查看第2036行的原始数据,确认total_cases_per_million的具体值:
    • 如果值确实超出decimal(12,6)范围,修改字段类型以支持更大的数值,例如改为decimal(13,6)(整数部分可容纳7位):
      ALTER TABLE coviddeaths MODIFY COLUMN total_cases_per_million decimal(13,6);
      
  • 执行DESCRIBE coviddeaths;命令,确认字段的实际类型是否与建表语句一致,若不一致则同步修正。

2. 处理含非数字字符的数据

如果CSV中该字段包含千分位逗号等干扰字符,修改LOAD DATA INFILE语句,通过变量替换清理数据后再导入:

LOAD DATA INFILE 'D:/BulkDataUpload/CovidDeaths.csv'
INTO TABLE coviddeaths
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS
(iso_code, continent, location, `date`, population, total_cases, new_cases, new_cases_smoothed, total_deaths, new_deaths, new_deaths_smoothed, @total_cases_per_million, new_cases_per_million, new_cases_smoothed_per_million, total_deaths_per_million, new_deaths_per_million, new_deaths_smoothed_per_million, reproduction_rate, icu_patients, icu_patients_per_million, hosp_patients, hosp_patients_per_million, weekly_icu_admissions, weekly_icu_admissions_per_million, weekly_hosp_admissions, weekly_hosp_admissions_per_million)
SET total_cases_per_million = REPLACE(@total_cases_per_million, ',', '');

3. 检查MySQL严格模式(可选)

如果上述方法无效,可检查MySQL是否开启严格模式(sql_mode包含STRICT_TRANS_TABLES),严格模式下会对超出范围的数值直接报错而非截断。若需临时绕过,可执行:

SET sql_mode = '';

执行导入后建议恢复原模式(不建议长期关闭严格模式)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 20:25:57