字符数据类型在数据库字符集或国家字符集中存储字符(字母数字)数据,即单词和自由格式的文本。字符数据类型与其他数据类型相比具有限制性,因此属性较少。

    字符数据存储在字符串中,其字节值与创建数据库时指定的字符集之一相对应。OceanBase 支持单字节和多字节字符集。

    说明

    字符数据类型的列可以存储所有字母数字值,但是 NUMBER 数据类型的列只能存储数字值。

    数据类型

    长度

    使用说明

    长度说明

    CHAR(size [BYTE | CHAR])

    定长

    索引效率高,程序里面使用 trim 去除多余的空白。

    参数 size 必须是一个介于 1~2000 之间的数值,存储大小为 size 个字节。

    NCHAR[(size)]

    定长

    使用 UNICODE 字符集(所有的字符使用两个字节表示) 。

    参数 size 必须是一个介于 1~2000 之间的数值,存储大小为 size 字节的两倍。

    NVARCHAR2(size)

    变长

    使用 UNICODE 字符集(所有的字符使用两个字节表示)。

    参数 size 的值必须介于 1~32767 之间,字节的存储大小是所输入字符个数的两倍。

    VARCHAR2(size [BYTE | CHAR])

    变长

    使用 UNICODE 字符集(所有的字符使用两个字节表示)。

    参数 size 必须是一个介于 1~32767 之间的数值,存储大小为输入数据的字节的实际长度,而不是 size 个字节。

    VARCHAR(size [BYTE | CHAR])

    变长

    OceanBase 中 VARCHARVARCHAR2 没有区别。

    参数 size 必须是一个介于 1~32767 之间的数值,存储大小为输入数据的字节的实际长度,而不是 size 个字节。

    其中,CHARVARCHAR2 数据类型需要指定 length 语义,其默认值由系统变量 NLS_LENGTH_SEMANTICS 控制。