mysql从csv文件导入数据时提示int类型出现' '(空字符串)

在进行数据分析并尝试从CSV文件导入数据到MySQL时,遇到了int类型字段出现空字符串(' ')的错误。经过在Stack Overflow上寻求帮助,找到了解决方案。通过以下MySQL语句创建表并使用LOAD DATA LOCAL INFILE命令导入数据,巧妙地处理了空字符串问题:1) 创建表结构,定义int类型字段;2) 使用LOAD DATA命令,设置字段分隔符、引用字符和行终止符,并忽略首行;3) 利用SET语句将空字符串转换为NULL。这样成功解决了导入时的空字符串问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最新在导入一些历史数据做数据分析时,发现出现int类型出现' '(空字符串)的错误
问了度娘也没结果,到stack overflow 问了下外国朋友成功解决囖,
这样的问题应该很少见,所以我也就不做过多的解释,直接看mysql语句(红色部分已经标出)

#新建表
drop table if exists src_estate_building_info;
create table src_estate_building_info (
    `src_id` int not null,
    `src_estate_building_id` int default null,
    `build_year` char(255),
    `src_street_number_id` int not null,
    `block_type` char(255),
    `incorporated_owners_id` int default null,
    key `estate_building` (`src_estate_building_id`), #同一个楼宇可以关联多个街道号,参考十字路口
    unique key `estate_building_street_number` (`src_estate_building_id`, `src_street_number_id`)
) default charset utf8;

#利用load命令导入csv文件
load data local infile '/alidata/address/estate_building_info.csv' into table src_estate_building_info
character set utf8
fields terminated by ',' optionally enclosed by '"'
lines terminated by '\r\n'
ignore 1 lines
(src_id, @vsrc_estate_building_id, build_year, src_street_number_id, block_type,@vincorporated_owners_id)
set
src_estate_building_id = nullif(@vsrc_estate_building_id,''),
incorporated_owners_id = nullif(@vincorporated_owners_id,'');
#end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值