zoukankan      html  css  js  c++  java
  • 将Excel表中的数据导入MySQL数据库

    背景

    最近接到交通学院的一个web项目,我的工作是在web页面上做个图表并且定时刷新这个图表,这里使用了Echarts API,关于如何使用,我抽时间再写一篇博客,这里主要记录一下,这个表里面的数据他们提供给我时是一个Excel表,那么我需要将其存储在数据库中,这也给我以启发,我们今后接手项目时,别人给的数据是擦乱无章的,如何整理并结构化存储是我们第一步需要做的。

    插曲(Excel表中时间列自增)

    由于数据库表中有一列是日期+时间,也就是我们所熟悉的yyyy-MM-dd HH:mm:ss,但是她们中Excel只记录了时间,没有日期部分,这里为了造模拟数据,需要添加日期部分。

    • 第一步
      确定某一个单元格的时间,比如我这里确定了A1单元格的时间,现在想要后面依次增加3秒。
    • 第二步
      将光标定位到A2上,输入
    =TEXT((TEXT(1*A1,"[s]")+3)/(24*60*60),"e-mm-dd hh:mm:ss")
    

    注意这里的A1就是确定的起始时间, +3代表加3秒
    随后向下拖动即可。效果如下:

    说正事

    使用Navicat 导入Excel到MySql数据中

    这里使用的MySQL界面化工具是Navicat,不多说,直接干。

    • 准备工作,要确定数据库表的字段名和Excel表表头对应一致,如果不一致,后面导入的时候也可自由匹配!比较麻烦,建议提前处理好。
    • 第一步
      选择Import Wizard
    • 第二步
      选择Excel文件类型, 亲测其他格式的同样可以!
    • 第三步
      Add File,选择需要导入的Excel本地文件
    • 第四步
      勾选
    • 第五步
      这里需要选择的是,表头名在哪一行,数据开始是哪一行。我这里是第2行和第3行
    • 第六步
      选中需要导入数据库哪一张表
    • 第七步
      将Excel表的表头和数据库表的字段名匹配上,如果数据库表的字段和Excel表的表头不匹配,就需要手动匹配,如果一样,这里会自动匹配。
    • 第八步
    • 选择第一个Append,顾名思义,添加到表中原有数据之后。

    遇到坑了

    我一开始导入之后,看到数据库表中有数据了,性喜若狂啊,结果一看

    我去,为毛我的时间全部都变成了1900-01-20,而我本身时间是2018-09-25啊。
    开始百度

    填坑

    首先将时间列数据库表的数据类型,设置为varchar,随后导入,发现不会有错,然后再改回datetime类型,我发现直接利用工具的Design Table改不行,改了之后还是1990-01-20。我也是运气好,换了一种方式,执行sql语句

    ALTER TABLE flow MODIFY time datetime
    

    perfect!!!!
    OK 搞定了。


    最后

    • 本文内容个人拙见,若有出入,欢迎指正。
    • 欢迎赏脸关注:家佳Talk

    欢迎赏脸关注:家佳Talk

  • 相关阅读:
    几个ID
    一百层高楼和两个棋子
    快速了解的链接 shell sed awk
    用shell实现一个“输入密码”程序
    i love you do you love me
    打造全新视觉环境
    【转】LINUX 环境变量总结
    TextBox输入限制
    获取CPU和硬盘序列号
    Lable属性设置(winform)
  • 原文地址:https://www.cnblogs.com/numen-fan/p/10007583.html
Copyright © 2011-2022 走看看