暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

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

VV_刺头王 2022-03-28
537

    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则生成错误数据

 

 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论