字符类型
该文档只介绍Vastbase兼容MySQL的字符类型,原Vastbase的字符类型未做删除和修改,详见字符类型。
类型 | 描述 | 存储空间 |
---|---|---|
CHAR(n) CHARACTER(n) NCHAR(n) | 定长字符串,不足补空格。n是指字符长度,如不带精度n,默认精度为1。 | 最大为10MB。 |
TEXT TINYTEXT MEDIUMTEXT LONGTEXT | 变长字符串。为了确保与MySQL的语法兼容,Vastbase支持这些类型后跟随(n)的语法格式,即:TEXT(n)、TINYTEXT(n)、MEDIUMTEXT(n)、LONGTEXT(n),但功能上(n)并不生效。 | 最大为1GB-1,但还需要考虑到列描述头信息的大小,以及列所在元组的大小限制(也小于1GB-1),因此TEXT类型最大大小可能小于1GB-1。 |
示例
1、创建测试表并插入数据。
CREATE TABLE char_type_t1
(
CT_COL1 CHARACTER(4),
CT_COL2 TEXT(10),
CT_COL3 TINYTEXT(11),
CT_COL4 MEDIUMTEXT(12),
CT_COL5 LONGTEXT(13)
);
2、查看表结构。
\d char_type_t1
返回结果为:
Table "public.char_type_t1"
Column | Type | Modifiers | Attalias
---------+--------------+-----------+----------
ct_col1 | character(4) | | CT_COL1
ct_col2 | text | | CT_COL2
ct_col3 | text | | CT_COL3
ct_col4 | text | | CT_COL4
ct_col5 | text | | CT_COL5
3、向表中插入数据。
INSERT INTO char_type_t1 VALUES('四个字符');
4、查询数据。
SELECT CT_COL1,length(CT_COL1) FROM char_type_t1;
返回结果为:
CT_COL1 | length
----------+--------
四个字符 | 4
(1 rows)
4、清理数据
DROP TABLE char_type_t1;