二进制类型
GaussDB支持的二进制类型请参见表1。
名称 |
描述 |
存储空间 |
---|---|---|
BLOB |
二进制大对象 目前BLOB支持的外部存取接口仅为:
这些接口详细说明请参见DBE_LOB。
说明:
列存不支持BLOB类型 |
最大为1GB减去6字节(即1073741818字节)。 |
RAW |
变长的十六进制类型
说明:
列存不支持RAW类型 |
最大为1GB减去6字节(即1073741818字节)。 |
BYTEA |
变长的二进制字符串 |
最大为1GB减去(56+24+5+1+前n列总字节数)。比如表为(a int, b bytea); 最长存储为1GB – 56 – 24 -5 -1– 4(int) = 1073741735。 |
BYTEAWITHOUTORDERWITHEQUALCOL |
变长的二进制字符串(密态特性新增的类型,如果加密列的加密类型指定为确定性加密,则该列的实际类型为BYTEAWITHOUTORDERWITHEQUALCOL),元命令打印加密表将显示原始数据类型 |
4字节加上实际的二进制字符串。最大为1GB减去53字节(即1073741771字节)。 |
BYTEAWITHOUTORDERCOL |
变长的二进制字符串(密态特性新增的类型,如果加密列的加密类型指定为随机加密,则该列的实际类型为BYTEAWITHOUTORDERCOL),元命令打印加密表将显示原始数据类型 |
4字节加上实际的二进制字符串。最大为1GB减去53字节(即1073741771字节)。 |
_BYTEAWITHOUTORDERWITHEQUALCOL |
变长的二进制字符串,密态特性新增的类型 |
4字节加上实际的二进制字符串。最大为1GB减去53字节(即1073741771字节)。 |
_BYTEAWITHOUTORDERCOL |
变长的二进制字符串,密态特性新增的类型 |
4字节加上实际的二进制字符串。最大为1GB减去53字节(即1073741771字节)。 |
- 除了每列的大小限制以外,每个元组的总大小也不可超过1GB-53字节(即1073741771字节)。
- 不支持直接使用BYTEAWITHOUTORDERWITHEQUALCOL和BYTEAWITHOUTORDERCOL,_BYTEAWITHOUTORDERWITHEQUALCOL,_BYTEAWITHOUTORDERCOL类型创建表。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
--创建表。 openGauss=# CREATE TABLE blob_type_t1 ( BT_COL1 INTEGER, BT_COL2 BLOB, BT_COL3 RAW, BT_COL4 BYTEA ) DISTRIBUTE BY REPLICATION; --插入数据。 openGauss=# INSERT INTO blob_type_t1 VALUES(10,empty_blob(), HEXTORAW('DEADBEEF'),E'\\xDEADBEEF'); --查询表中的数据。 openGauss=# SELECT * FROM blob_type_t1; bt_col1 | bt_col2 | bt_col3 | bt_col4 ---------+---------+----------+------------ 10 | | DEADBEEF | \xdeadbeef (1 row) --删除表。 openGauss=# DROP TABLE blob_type_t1; |