zoukankan      html  css  js  c++  java
  • [MySQL]load data local infile向MySQL数据库中导入数据时,无法导入和字段不分离问题。

      利用load data将文件中的数据导入数据库表中的时候,遇到了两个问题。

      

      首先是load data命令无法执行的问题:

        命令行下输入load data local infile "path/filename" to table table_name;

        系统提示:ERROR 1148 (42000): The used command is not allowed with this MySQL version。

        解决方法:退出mysql, 重新以此命令登录mysql

        mysql -u root -p --local-infile=1   (local-infile=1代表允许使用local infile 参数), 之后在进行文件数据导入

      第二个问题是文件中的一行数据导入表中后,没有分离字段,整一行数据都加到了表中的第一个字段下。

        根据mysql文档上load data命令讲解,如果导入数据时不加fields terminated by 'string' 参数,那么其默认是以制表符分离每个字段。我的数据一行有三列

        张三  32岁  北京中南海人

        我以Tab分隔每列数据,但是导入数据后,这一行数据全在name字段下

        解决方法: 更改一个fields 结束标记。

          load data local infile "path/file" to table table_name fields terminated by ":";

        还没有搞清楚为什么默认的分离标记不成功。 注意,有时候你可能会规定导入的字段名称,eg load data local infile "path/file" to table table_name(name, age) fields terminated by ":", 此时会出现语法错误,就是因为规定字段引起的。

  • 相关阅读:
    环境变量不重启生效
    egret list不显示问题
    批处理收集
    吐槽阿里云数据库的备份还原
    一次没清缓存的坑
    imagepng或imagejpeg浏览器无显示问题
    xdebug调试一直等待连接
    Python快速学习07:文本文件的操作
    Python快速学习06:词典
    纸上谈兵: AVL树[转]
  • 原文地址:https://www.cnblogs.com/KarryWang/p/3589992.html
Copyright © 2011-2022 走看看