infobright导入数据遇到特殊字符报错的解决方法

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

如果元数据中有特殊控制字符,导入过程中经常会报错,很是恼火。应对策略有两种方法:

1.设置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%)

2.导出时指定结束符此外,还可以在导出数据时制定结束符,并且设定忽略哪些转义字符(\、”、' 等字符),例如:

代码如下:

select fields_list... into outfile '/tmp/outfile.csv' fields terminated by '||' ESCAPED BY '\\' lines terminated by '\r\n' from mytable;

3.或者,将行间隔符设定为其他特殊标识,例如:select fields_list… into outfile ‘/tmp/outfile.csv' fields terminated by ‘||' ESCAPED BY ‘\\' lines terminated by ‘$$$$$\r\n' from mytable;当然了,这种情况下,实际数据行中就不能存在 “$$$$$\r\n” 这个值了,否则会被当成换行标识。

(0)

相关推荐

  • infobright导入数据遇到特殊字符报错的解决方法

    目前在用的是社区版的infobright,不支持DML功能,只能用LOAD DATA方式导入数据. 如果元数据中有特殊控制字符,导入过程中经常会报错,很是恼火.应对策略有两种方法: 1.设置Reject File导入之前,设定 @BH_REJECT_FILE_PATH 和 @BH_ABORT_ON_COUNT 就可以忽略多少条导入失败的记录,并且将这些记录保存在指定文件 复制代码 代码如下: /** when the number of rows rejected reaches 10, abo

  • python使用pip成功导入库后还是报错的解决方法(针对vscode)

    目录 前言 分析产生问题的原因 重点解决第二个问题 补充的问题——python代码有黄色的波浪线(定期补充) 总结 前言 写在开始前:其实出现这样的问题,你需要知道的就是核心问题出在哪里,并非是要相同的编译器才是这样的解决办法,要学会举一反三.核心问题(我帮你分析一下): 首先你是确保已经安装好了这个库,但是就是很奇妙的报错,那么问题可以排除你没成功安装库,只是你的库不起作用,那么不妨回忆一下你以前和最近是否安装了很多版本的python,然后又没有卸载,导致编译器有许多的版本需要抉择,但是编译器

  • mysql导入csv的4种报错的解决方法

    以此悼念我今天踩过的4个坑-- 坑一:local的错 报错: ERROR 3948 (42000): Loading local data is disabled; this must be enabled on both the client and server sides 修正:去掉local mysql> load data infile -- 坑二:csv地址错 报错: ERROR 1290 (HY000): The MySQL server is running with the -

  • layui数据表格 table.render 报错的解决方法

    一.报错信息 Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Wed Jan 23 15:20:18 CST 2019 There was an unexpected error (type=Internal Server Error, status=500). An error happened during temp

  • Python3.5 win10环境下导入kera/tensorflow报错的解决方法

    本文实例讲述了Python3.5 win10环境下导入keras/tensorflow报错的解决方法.分享给大家供大家参考,具体如下: 我在win10 Python3.5.2安装keras,然后导入时报错如下: Python 3.5.2 |Continuum Analytics, Inc.| (default, Jul 5 2016, 11:41:13) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright&

  • spring cloud feign不支持@RequestBody+ RequestMethod.GET报错的解决方法

    1.问题梳理: 异常:org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported 很明显是最终feign执行http请求时把这个方法认定为POST,但feign client中又定义了RequestMethod.GET 或 @GetMapping,冲突导致报错 那么为什么feign会认为这个方法是post呢? 源码追踪: 1.我们从feignClient注解

  • Mysql5.7及以上版本 ONLY_FULL_GROUP_BY报错的解决方法

    近期在开发过程中,因为项目开发环境连接的mysql数据库是阿里云的数据库,而阿里云的数据库版本是5.6的.而测试环境的mysql是自己安装的5.7.因此在开发过程中有小伙伴不注意写了有关group by的sql语句.在开发环境中运行是正常的,而到了测试环境中就发现了异常. 原因分析:MySQL5.7版本默认设置了 mysql sql_mode = only_full_group_by 属性,导致报错. 其中ONLY_FULL_GROUP_BY就是造成这个错误的罪魁祸首了,对于group by聚合

  • Typescript中使用引用路径别名报错的解决方法

    在TS中引用路径别名提示找不到模块或者相应的声明 1.ts中使用路径别名报错 在react中通常路径别名都是在webpack的webpack.config.js文件中配置的,但是在引入了ts之后,webpack中的路径别名引用失效了此时我们需要在跟src文件同级目录的tsconfig.json文件中添加配置: 注意要在compilerOptions中添加(webpack中的路径也需要配置) "compilerOptions": { "target": "e

  • Git发现git push origin master 报错的解决方法

    git push origin master 报错的解决方法,分享给大家,具体如下: 错误提示如下 [root@linux1 php]# git push -u origin master To git@github.com:kangvcar/Results-Systems--PHP.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@github.com:kangvcar

  • VS2017添加EF的MVC控制器报错的解决方法

    VS2017添加EF的MVC控制器报错的解决方法,供大家参考,具体内容如下 1. 错误描述:no database provider has been configured fot this DbContext. 此类错误是上下文的注册造成的.解决方式在DBContext中重写OnConfiguring方法去注入数据库连接. DbContext中: public static string ConnectionString { get; set; } protected override voi

随机推荐