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/

  • 相关阅读:
    第010讲~第011讲:一个打了激素的数组
    练习15--阅读文件
    第007讲~第009讲:了不起的分支和循环
    第006讲:Python之常用操作符
    第005讲:闲聊之python的数据类型
    练习14--提示和传递
    第004讲:改进我们的小游戏
    ICPC Central Europe Regional Contest 2019 H. Ponk Warshall
    2019 ICPC Asia Yinchuan Regional G. Pot!!(线段树 区间更新 区间查询)
    CF1286A Garland
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/9875470.html
Copyright © 2011-2022 走看看