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 ":", 此时会出现语法错误,就是因为规定字段引起的。

  • 相关阅读:
    Win10
    编码
    [转帖] Tomcat安全配置小技巧
    关于redis bind
    query data filtered by a JSON Column in SQLAlchemy
    Flask多线程环境下logging
    Flask request
    [转] MySQL树结构递归查询处理
    [转]了解BFF架构
    转载:ELK实战系列3-RabbitMQ+ELK搭建日志平台
  • 原文地址:https://www.cnblogs.com/KarryWang/p/3589992.html
Copyright © 2011-2022 走看看