• mysql导入数据,涉及到时间转换,乱码问题解决


    表结构:

    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`;

  • 相关阅读:
    VUE 入门基础(8)
    VUE 入门基础(7)
    VUE 入门基础(6)
    VUE 入门基础(5)
    VUE 入门基础(4)
    VUE 入门基础(3)
    线程的通信
    如何实现一个简单的RPC
    Java程序员必须掌握的线程知识-Callable和Future
    同步函数死锁现象
  • 原文地址:https://www.cnblogs.com/davidwang456/p/7082356.html
Copyright © 2020-2023  润新知