GBase 8a语法格式
GBase 8a 支持通过 SQL 接口进行数据加载。语法:
LOAD DATA INFILE 'file_list' INTO TABLE tbl_name [options]tbl_name: [database_name.]table_name
options:
[DATA_FORMAT number [HAVING LINES SEPARATOR]]
[NULL_VALUE 'string'] [FIELDS
[TERMINATED BY 'string'] [ENCLOSED BY 'string'] [PRESERVE BLANKS] [AUTOFILL] [{LENGTH|DEFINER} 'string']
[TABLE_FIELDS 'string']
] [LINES
[TERMINATED BY 'string']
]
[MAX_BAD_RECORDS number] [DATETIME FORMAT format]
[DATE FORMAT format] [TIMESTAMP FORMAT format]
[TIME FORMAT format] [TRACE number] [TRACE_PATH 'string'] [PARALLEL number] [SKIP_BAD_FILE number]
[SET col_name = value[,...]]
参数说明:
FILE_LIST:待加载文件列表。支持以本地文件方式和 URL 方式指定数据文件路径,以英文逗号(‘,’)作为多个文件的分隔符。
scheme://[user:password@]host[:port]/path,
scheme://[user:password@]host[:port]/path
OPTIONS:
DATA_FORMAT:用来指定使用哪种方式解析数据文件并加载。指定为 3,表示使用文本方式加载。指定为 4,表示使用定长方式加载。如果某列数据可能包含了行分隔符,则需要在 SQL 中输入’HAVING LINES SEPARATOR’子句。指定为 5,表示使用文本文件宽松模式,即数据源文件为包围符中含有换行符和包围符文本文件,或多列少列文本文件。
NULL_VALUE:用于指定空值字符,支持不超过 15 个任意字符的组合,参数值以引号包围,指定方式与字段包围符一样。
FIELDS 子段:
TERMINATED BY:用于指定字段分隔符,支持不超过 15 个任意字符的组合, 支持任意字符,参数值以单引号包围,仅当使用文本方式加载时有效。可使用字符本身(仅限可见字符,如:“|”)、C 风格转义字符(如:“\a”)、\xhh 十六进制(如:“\xFF”)或 x’‘十六进制(如:"x’09’“)四种方式指定。例如:‘|’,表示用|作为分隔字符。
ENCLOSED BY:用于指定字段包围符,支持任意单字符,参数值以单引号包围,仅当使用文本方式加载时有效。可使用字符本身(仅限可见字符,如:”|“)、
C 风格转义字符(如:”\a")、\xhh 十六进制(如:“\xFF”)或 x’‘十六进制(如:
"x’09’")四种方式指定。
PRESERVE BLANKS:用于设定是否保留字段内容两端的空格,默认不保留空格。
AUTOFILL:用于设定是否启用缺失列自动补齐功能,启用该参数后,对缺失分割符的字段数据按照 default 值或者 NULL 值进行加载,默认不自动补齐。
LENGTH|DEFINER:在使用定长模式加载时,用于设定字段长度的参数。定 长格式数据导入时,设置每个字段的长度,有多个字段时,用逗号分隔。
TABLE_FIELDS:用于指定列加载,对于日期时间类型可以设置每一列的格式。
SET:指定列值加载,加载系统将待加载文件和指定加载列值加载到集群 系统的表中。输入的类型应为常量,包括字符串、整数值、浮点值和 NULL。
1、 支持指定所有列类型加载值;
2、 指定列值为常量值(包括 NULL),包括字符串(单引号包围)、十进制数值(10)、浮点值(10.9)、NULL、16 进制表示的字符串(0xbac3)、科学计数法(10e4);
3、 支持多列同时指定加载值。最多可 SET 表列数-1 ,如果设置的列数与表定义中的列数一致将报错:Specified all fields .
4、 支持 format=3、format=4 以及 format=5; 使用限制说明:
1、 输入除常量值外的其他值,如列名、表达式等会报错,报错信息为Column ‘addr’ should be const value;
2、 指定的列不能存在于 TABLE_FIELDS 中,否则报错;
3、 如果没有指定 AUTOFILL,指定值的列数+数据中列数之和必须等于表定义或者 TABLE_FIELDS (若指定了 TABLE_FIELDS)中的列数,否则会产生错误数据;如果指定了 AUTOFILL,则可以小于表定义的列数,缺少的列会自动补全。如果 TABLE_FIELDS 列数+SET 列数小于表定义的列数,能够正常加载,没有涉及的列按照 default 值补齐;
4、 同一列在 SQL 中不能重复指定,否则报错。
LINES 子段:
TERMINATED BY:行分隔符,支持任意单字符,参数值以引号包围。指定方式与包围符一样。默认行分隔符为’\n’。
MAX_BAD_RECORDS:在每次加载的任务中,设定错误数据行数的上限。当 本次加载任务产生的错误数据行数大于 max_bad_records 设定的值时,加载任务回滚,加载工具报错退出。此参数取值范围为:[0, 4294967295]。此参数为可选参数,默认不限制错误条数。0 表示只要有错误数据就报错退出。
DATE FORMAT:用来指定 date 列类型的默认格式,默认为’%Y-%m-%d’。
DATETIME FORMAT : 用来指定 datetime 列的默认格式, 默认为’%Y-%m-%d %H:%i:%s’。
TIMESTAMP FORMAT : 用来指定 timestamp 列的默认格式, 默认为’%Y-%m-%d %H:%i:%s’。
TIME FORMAT:用来指定 time 列的默认格式,默认为’%H:%i:%s’。
TRACE:用来指示本次加载是否保存错误数据溯源。如果指定为 0,则不溯源。如果指定为 1,则进行溯源。默认值为 1。
溯源信息包括:错误数据所在的文件,所在行号。
TRACE_PATH:用来指定本次加载过程中产生的错误数据和日志存放路径。缺省情况下,错误数 据和溯源日志记 录在加载机节 点的
/opt/gnode/log/gbase/loader_logs 下。
PARALLEL:用来控制加载并行度,取值范围[0,1024]。默认值为 0,表示并行度取值是线程池最大可用线程数。
SKIP_BAD_FILE: 用来指定本次加载任务中是否忽略不存在或没有读取权限的数据文件继续加载。如果指定为 0,则加载报错终止。如果指定为 1,则忽略异常文件继续加载。默认值为 0。
GBase 8a语法格式相关推荐
- GBase 8a里通过rsync加速调度coor节点的扩容和替换效率
在GBase 8a的早期版本里,扩容或者节点替换调度节点(coordinator)时,是通过本地tar打包,然后scp传输到新节点来实现的,而tar本身不支持并行,所以代码上是将打包任务按表名字分解成 ...
- Netezza向GBase 8a迁移总结
Netezza向GBase 8a迁移总结 目 录 前言 数据类型 2.1. 综述 2.2. 数值类型 2.2.1. 精确数值数据类型 2.2.2. 近似数值数据类型 2.3. 字符串数据类型 2.3. ...
- Teradata到GBase 8a迁移总结
Teradata到GBase 8a迁移总结 目录 1 DDL语法相关 1.1 字段类型 1.2 建表语句 1.2.1 表类型 1.2.2 表选项 1.2.3 列选项 1.2.4 约束 1.2.5 分布 ...
- GBase 8a MPP Cluster SQL基础
一.SQL语言基础知识 1.SQL语句根据其可实现功能,分为以下几类: 1.1 DDL语句:用来创建数据库以及定义其表结构.视图索引等. 关键词有CREATE.DROP.ALTER.RENAME等 1 ...
- GBase 8a 支持存储过程、自定义函数的定义和使用
GBase 8a存储过程.函数: 一.概述 存储过程是一组可以完成特定功能的 SQL 语句集,经编译后存储在数据库 中.用户在执行存储过程时,需要指定存储过程的名称并给出参数(如果存储 过程里包含 ...
- GBase 8a 数据抽取工具orato8a用法介绍
1. 说明 orato8a是用于从Oracle抽取数据,可以导入GBase 8a数据库的数据抽取工具 2. 使用语法 ./orato8a parameter_1 parameter_2 -- para ...
- GBase 8a 数据迁移工具4--- Oracle数据迁移工具“orato8a”
GBase 8a MPP Cluster 根据不同场景需求提供多种便于用户操作的数据迁移工具. orato8a 简介 orato8a 是一个可以快速.高效地从 oracle ...
- GBASE 8A 管理员手册(3)数据加载
加载功能 在V8. 6.1. 1版本GBase 8a中,加载功能直接集成在GBase 8a内部,不需 要额外部署外部加载工具. 与V8. 5.1. 2版本单机加载工具相比,新版加载工具具备如下一些特性 ...
- GBASE 8A 管理员手册(1)基础管理
服务的启停 当GBase 8a安装完毕后,其中的gbase.server服务需要手动启动,之后, 每当开机和重新启动机器时,gbase.server服务都需要手动启动.如果用户在 使用中,需要手工进行 ...
最新文章
- lombox的用法(省去了set/get/NoArgsConstructor/AllArgsConstructor)
- PIL图像处理:读取图像,显示图像,ROI,保存图像
- XIII Open Grodno SU Championship
- 《鬼泣V》:旧时代的标杆在新时代的窘境
- poj1463 Strategic game
- P1466 集合 Subset Sums 搜索+递推+背包三种做法
- C++11 并发指南六(atomic 类型详解四 C 风格原子操作介绍)
- ASP.NET MVC 学习之路-5
- 【Nodejs】npm cnpm 淘宝镜像
- 训练中Loss为Nan的原因,梯度消失或者爆炸的优化
- 学习http only cookie以及javascript创建cookie的方式
- 【论文解读】ICLR2021 知识建模与信息抽取
- 神经网络模型参数的压缩
- RGBLCD显示实验————复习到这
- Java 实现批量静默打印PDF文件
- IBM服务器微软集群安装
- 智齿客服签约垂直日本的最大旅游服务平台仙贝旅行
- 【超宽带MIMO】超宽带MIMO雷达对目标的检测及成像
- node.js使用ass生成视频字幕(上)
- 百度APP“看听模式”:“AI主播”借道信息流全面落地?
热门文章
- Pycharm编译代码时出现“SyntaxError: Non-UTF-8 code starting with ‘\xca‘ in file ...“
- octagam® 10%治疗皮肌炎患者的ProDERM研究达到主要终点的阳性结果将在ACR 2020年会上呈报
- 简单了解latex输出矩阵
- 华为无线三层无线简单配置
- 关于IPv6(超详细讲解)
- 迭代扩展卡尔曼滤波学习
- RGB565 RGB888
- standalone集群模式
- java八大基本数据类型及其封装类
- 应用程序存在文件包含漏洞(Unix系统) WASC Threat Classification 解决办法