表结构:
drop table if exists `qi_an_log`;
CREATE TABLE `qian_log` (
`dt` LONG NOT NULL COMMENT '产生日期,格式yyyy-MM-dd',
`METHOD_NAME` varchar(30) NOT NULL COMMENT '渠道名称或者接口名称',
`src_ip` varchar(45) DEFAULT NULL,
`ip` varchar(45) DEFAULT NULL,
`mobile` varchar(30) DEFAULT NULL,
`id_no` varchar(30) DEFAULT NULL,
`user_name` varchar(32) DEFAULT NULL COMMENT '姓名',
`log_date` datetime DEFAULT NULL COMMENT '日期',
`ret_code` tinyint(4) DEFAULT NULL DEFAULT '1' COMMENT '默认值1-激活,0-非激活',
`is_exist` tinyint(4) DEFAULT NULL DEFAULT '0' COMMENT '默认值0-未删除,1-删除'
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='导入数据';
1. 编码格式问题解决:
show variables like 'char%';
然后
set character_set_database=utf8;
2. 涉及到分隔符
load data local infile 'D:/document/log/test11.csv' into table qian_log FIELDS TERMINATED BY ',' (dt,METHOD_NAME,src_ip,ip,mobile,id_no,user_name,ret_code,is_exist) ;
3. 导入日期
日期完全可以使用varchar表示,不影响使用,且不易出错。
alter table `check_post01` add column `log_date` VARCHAR(45) DEFAULT NULL COMMENT '日期';
update qi_an_log set dt=REPLACE(dt,'"','');
update `qi_an_log` set log_date= FROM_UNIXTIME( dt/1000, '%Y-%m-%d' ); ;
涉及时间格式转换
select FROM_UNIXTIME( dt/1000, '%Y-%m-%d' ) from `qi_an_log`;