手机
当前位置:查字典教程网 >编程开发 >mysql数据库 >infobright导入数据遇到特殊字符报错的解决方法
infobright导入数据遇到特殊字符报错的解决方法
摘要:目前在用的是社区版的infobright,不支持DML功能,只能用LOADDATA方式导入数据。如果元数据中有特殊控制字符,导入过程中经常会...

目前在用的是社区版的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 'rn' from mytable;

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

【infobright导入数据遇到特殊字符报错的解决方法】相关文章:

windows下mysql忘记root密码的解决方法

免安转MySQL服务的启动与停止方法

MySQL 大数据量快速插入方法和语句优化分享

NaviCat连接时提示"不支持远程连接的MySql数据库"解决方法

MySQL Administrator 登录报错的解决方法

navicat 8 创建数据库与创建用户分配权限图文方法

MySQL数据库服务器逐渐变慢分析与解决方法分享

Mysql导出数据的正确方法

SQL Server数据库崩溃的方法

java实现插入mysql二进制文件,blob类型,遇到问题及解决办法

精品推荐
分类导航