求助:如何在MySQL Workbench中导入含空值的CSV文件?
MySQL Workbench导入CSV处理空INT列的解决方法
方法1:利用Workbench导入向导自动映射空值
- 打开Workbench的Table Data Import Wizard,选中目标CSV文件
- 进入Column Mapping步骤,定位到"Safety Score"列
- 确认列类型为
INT,在Default Value输入框中填写NULL(无需加引号) - 完成后续导入步骤,Workbench会自动将空单元格转换为NULL值存入INT列
方法2:正确预处理CSV文件
- 无需手动替换空单元格为",, "或带引号的"NULL",直接保留原始空格式(即两个逗号间无任何字符,如
xxx,,xxx) - 如果CSV中空单元格被双引号包裹(如
xxx,"",xxx),需删除引号,避免MySQL将空字符串识别为无法转换的字符串类型
方法3:使用LOAD DATA INFILE命令(更可控)
- 先创建允许NULL的目标表(示例):
CREATE TABLE your_table ( -- 替换为你的其他列定义 id INT AUTO_INCREMENT PRIMARY KEY, `Safety Score` INT NULL, other_column VARCHAR(255) );
- 执行LOAD DATA命令,自动转换空值:
LOAD DATA INFILE '/your/csv/file/path.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' ENCLOSED BY '"' -- 仅当CSV字段用双引号包裹时添加,否则删除 LINES TERMINATED BY '\n' IGNORE 1 ROWS -- 若CSV包含表头行则添加 ( -- 按CSV列顺序填写所有列名,示例: id, `Safety Score`, other_column ) SET `Safety Score` = NULLIF(`Safety Score`, ''); -- 将空字符串转为NULL
内容的提问来源于stack exchange,提问作者python_beginner
相关产品推荐
相关产品推荐

