返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

非字符型数据的转义规则
正常情况下,转义符仅仅对字符型数据进行转义,但是在一些特殊的情况下,对
于非字符型数据也可以进行转义。
数据类型
表5- 158 数据类型
非字符型数据类型
TINYINT
INT
SMALLINT
MEDIUMINT
BIGINT
BOOL
FLOAT
DOUBLE
DECIMAL
YEAR
数据进行转义的情况

如果指定“字段包围符首字符”(FIELDS ENCLOSED BY)是特殊字符“.、0、
1、2、3、4、5、6、7、8、9、e、+、-”之一时,才会对非字符型数据类型
进行转义处理。
备注:
指定“字段包围符首字符”为某特殊字符的方式有两种:
直接指定某特殊字符为“字段包围符”的首字符,例如:
SELECT * FROM gs INTO OUTFILE '/home/gbase/temp/3.txt' FIELDS
ENCLOSED BY '0';
指定“字段包围符”为空,且指定“字段分隔符”的首字符为某特殊字符,
例如:
SELECT * FROM gs INTO OUTFILE '/home/gbase/temp/4.txt' FIELDS
TERMINATED BY '0' ENCLOSED BY '';

如果指定“字段包围符首字符”为“n、t、r、b、0、Z、N”之一时,实际上
只能为字符“0”,再进行导出,采用的是用其本身进行转义的方式。
示例中用到的表及数据:
DROP TABLE IF EXISTS t;
CREATE TABLE t(n int, v1 varchar(5), v2 varchar(8));
INSERT INTO t VALUES(102, 'ab', 'xmny');
示例:
SELECT * FROM t INTO OUTFILE '/home/gbase/temp/5.txt' FIELDS
ENCLOSED BY '0';
查看导出结果,非字符型数据“102”中的“0”使用本身进行转义:

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1234
$ cat 5.txt
010020
0ab0
0xmny0
如果指定“字段包围符首字符(FIELDS ENCLOSED BY)”不属于“n、t、
r、b、0、Z、N”之一时,则采用的是用转义符进行转义的方式。
示例:
SELECT * FROM t INTO OUTFILE '/home/gbase/temp/6.txt' FIELDS
ENCLOSED BY '2';
查看导出结果,非字符型数据“102”中的“2”使用默认的转义符“\”进行
了转义:
$ cat 6.txt
210\22
2ab2
2xmny2

特例说明:如果导出字符包含“\0”,则导出的结果为“转义符+0”(参见

+-------------------------------------------+
1 row in set

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
856

功能说明
记录对表的操作权限信息。
表结构说明
表5- 239 表结构信息说明:




GRANTEE
权限所有者
TABLE_CATALOG
数据表登记目录
TABLE_VC
所属虚拟集群名
TABLE_SCHEMA
所属数据库名
TABLE_NAME
所属的表名
PRIVILEGE_TYPE
权限类型
IS_GRANTABLE
是否具有赋予权限的权限