zoukankan      html  css  js  c++  java
  • 记录一次mysql使用load into命令导入csv格式数据的过程

    今天从qwiklab实验获取一组数据,大概有5万条,在qwiklab实验室使用的是pgsql数据库,但是今天想把他插入本地的mysql数据库中。

    1、首先是查看一下数据内容:

    数据中有的是空值,有的是boolean类型的值。那我们就要想想怎么插入数据库了。

    2、我们先在mysql中建表。

    建表语句比较长,一共有18个字段。

    这里说一下:因为一开始是将数据中的“true”和“false”的数据插入到Mysql的boolean类型中,但是出现了50万条的警告,平均一条数据就10个警告。出现警告的原因是:字符“true”无法插入mysql的boolean类型中,感觉这就很奇怪了,仔细分析一下原来是数据文件中的“true”导入到数据库中变成了字符类型了,导致插入不进去(这里声明一点,mysql是没有boolean类型的,凡是将字段属性声明为boolean类型,mysql会自动转化为tinyint(1)类型)。也就是说,字符类型插入数值类型,那是肯定插不进去的啊。

    所以我就不在mysql中创建boolean的属性了,直接创建成varchar类型的属性了。

    3、开始插入scv的数据。

     4、这样子就插入成功了。也没有警告。

    问题1:

    尝试导入数据的时候出现错误:

    The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

    上网查了一下,应该是mysql设置的权限,可以使用

    show variables like '%secure%';查看 secure-file-priv 当前的值是什么

     请注意上面的这个“/root/”是我修改之后的,刚开始报错的时候查看这个值是“NULL”。

    我们需要在配置文件中修改这个值

    然后再重启MySQL就可以了。

    问题2:

    我们可以参考这个博客文章的导入数据的错误分析:http://blog.itpub.net/28218939/viewspace-2139721/

  • 相关阅读:
    合并、媒体查询
    混入、命名空间(less)、继承
    函数(内置函数 和 自定义函数)
    运算、单位、转义、颜色
    选择器嵌套、伪类嵌套、属性嵌套(只在Sass中)
    注释、变量、插值、作用域
    二路归并排序java实现
    堆排序Java实现
    和为S的连续正数序列——牛客网(剑指offer)
    transient 与 volatile 笔记
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/9875470.html
Copyright © 2011-2022 走看看