zoukankan      html  css  js  c++  java
  • infobright系列三:数据导入乱码

    1:目前在用的是社区版的infobright,不支持DML功能,只能用LOAD DATA方式导入数据。

    如果元数据中有特殊控制字符,导入过程中经常会报错

    2:

    设置Reject File导入之前,设定 @BH_REJECT_FILE_PATH 和 @BH_ABORT_ON_COUNT 就可以忽略多少条导入失败的记录,并且将这些记录保存在指定文件
    /** when the number of rows rejected reaches 10, abort process **/

    set @BH_REJECT_FILE_PATH = '/tmp/reject_file';

    set @BH_ABORT_ON_COUNT = 10;

    BH_ABORT_ON_COUNT 设定为 -1 的话,表示永不忽略。
    也可以设置 BH_ABORT_ON_THRESHOLD 选项,该选项表示有最多多少百分比的数据允许被忽略,因此该选项的值是小数格式,例如 BH_ABORT_ON_THRESHOLD = 0.03(表示3%)

    导出时指定结束符此外,还可以在导出数据时制定结束符,并且设定忽略哪些转义字符(、”、’ 等字符),例如:
    select fields_list... into outfile '/tmp/outfile.csv' fields terminated by '||' ESCAPED BY '\' lines terminated by ' ' from mytable;
    或者,将行间隔符设定为其他特殊标识,例如:select fields_list… into outfile ‘/tmp/outfile.csv’ fields terminated by ‘||’ ESCAPED BY ‘\’ lines terminated by ‘$$$$$ ’ from mytable;当然了,这种情况下,实际数据行中就不能存在 “$$$$$ ” 这个值了,否则会被当成换行标识。

    3:

    LOAD DATA LOCAL INFILE 'E:dim_ec_browser.txt' INTO TABLE dim_ec_browser FIELDS TERMINATED BY ' '

    4:

    SELECT * FROM tab_name INTO OUTFILE '/data/tabname.txt' FIELDS TERMINATED BY ' ' ENCLOSED BY ' " ' LINES TERMINATED BY '/n' ;

     

  • 相关阅读:
    Websocket --socket.io的用法
    Vuex中mapState的用法
    vue中关于computed的一点理解
    webuploader大文件分片,多线程总结
    pdf的使用遇到的问题
    单文件WebUploader做大文件的分块和断点续传
    webUploader大文件断点续传学习心得 多文件
    iframe子页面与父页面元素的访问以及js变量的访问
    pwa 集合
    mpvue 转小程序实践总结
  • 原文地址:https://www.cnblogs.com/xiaoit/p/4505665.html
Copyright © 2011-2022 走看看