GBase 8a MPP 文本文件宽松模式加载

GBase 8a支持文本文件宽松模式加载,用户可以通过在加载语句中指定参数format值为5来指定采用宽松加载模式解析数据文件并加载。

FORMAT 5宽松模式加载适用于以下几种情况:

  1. 包围符中有行分隔符的数据;
  2. 包围符中有包围符的数据(配对或不配对);
  3. 字符型数据超过表定义字段宽度;
  4. 对于数值型字段和日期型字段,实际数据类型与对应的字段类型不同;
  5. 数据源文件列数多于表的列数;
  6. 数据源文件列数少于表的列数。

    FORMAT 5宽松模式加载与FORMAT 3普通文本加载的对比:

FORMAT 5

FORMAT3

不一致规则

数据中有空值时,入库数据为null,不是default值,设定default值对加载结果没有影响。

数据中有空值时,如果有default值,入库数据为default值,否则入库为null。

支持超宽列自动截断

超宽列会记为错误数据

数据文件中实际的包围符、列分隔符与控制文件中设置的不一致时,如果第一列为字符型,数据截断入库,后面的字段都为空值;如果第一列为数值型或日期型,则都为错误数据

不会对数据进行截断处理,多列和少列都会作为错误数据。

指定 auto_fill_column,在少列的时候自动补齐,无论列定义是否有 default值,都会用 null 值补齐缺失列,而不是 default 值。

少列时不会自动补齐都作为错误数据。

一致规则

行分隔符、列分隔符、包围符均支持多字符(不超过15个字符)

包围符缺省为空

行分隔符、列分隔符、包围符不允许重复

不支持转义符

支持有包围符和无包围符数据混合的情况,数值型数据无论是否有包围符,入库的均为数据本身

数据中有空格时,缺省去掉前后的空格,包围符中的空格保留

数据中分隔符之间为空格、多个空格时,如果没有包围符,会被当做空值处理。

数据中有空值时,若此列为not null则生成错误数据

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值