全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SQL及关系型数据库数据分析
2022 2
2021-04-16
excel第一列数据为ID,第一个数为1
转化为CSV utf-8格式
用load data infile导入MYSQY,导进去第一个数变成了0, 其他数都能对上,warning 1366 incorrect integer value
求大神解答这是为什么?怎么解决
小白自学MYSQL中,什么都不懂,求基础解答
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2023-7-28 15:19:06
可能是文本编码问题,建议用dbeaver窗口式导入,方便直观
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2025-2-8 15:58:22
1. 检查 CSV 文件
打开 CSV 文件,确保第一列(ID 列)的第一个值是 1,并且没有隐藏字符。

使用文本编辑器(如 Notepad++)将文件另存为 UTF-8 编码格式。

2. 检查 MySQL 表结构
运行以下 SQL 语句检查表结构:

sql
复制
DESCRIBE your_table_name;
确保 ID 列的类型是 INT,并且没有设置 AUTO_INCREMENT。如果需要修改表结构,可以使用以下语句:

sql
复制
ALTER TABLE your_table_name MODIFY COLUMN ID INT;
3. 使用 LOAD DATA INFILE 导入数据
确保 LOAD DATA INFILE 语句正确指定了列和格式。例如:

sql
复制
LOAD DATA INFILE '/path/to/your/file.csv'
INTO TABLE your_table_name
CHARACTER SET utf8
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS  -- 如果 CSV 文件有标题行,忽略第一行
(ID, column2, column3, ...);  -- 指定列名
4. 处理 Warning 1366
Warning 1366 表示 MySQL 无法正确解析整数值。可能的原因是:

CSV 文件中 ID 列的值包含非数字字符。

文件编码问题。

检查 CSV 文件的第一列,确保所有值都是纯数字。可以使用以下命令查看文件内容:

bash
复制
cat /path/to/your/file.csv
如果发现问题,可以使用工具(如 sed)清理文件:

bash
复制
sed -i 's/[^0-9,]//g' /path/to/your/file.csv
5. 重新导入数据
清理文件后,重新运行 LOAD DATA INFILE 语句导入数据。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群