CHAR 数据类型指定了固定长度的字符串。OceanBase 确保存储在 CHAR 数据类型列中的所有值的长度等于 size 指定的固定长度。如果您插入的值短于指定长度,则 OceanBase 将用空格填充剩余长度。如果您插入的值超过列长度,则 OceanBase 会返回错误。

BYTECHAR 限定符会覆盖由 NLS_LENGTH_SEMANTICS 参数指定的语义,而该参数默认字节语义。为了确保具有不同字符集的数据库之间,能够进行正确的数据转换,CHAR 数据必须由格式正确的字符串组成。

语法

  1. CHAR [(size [BYTE | CHAR])]

参数

参数说明
size表示指定的固定长度
BYTE表示以字节(BYTE)为单位提供列的长度
CHAR表示以字符(CHAR)为单位提供列的长度

CHAR 数据类型的列的默认长度为 1 个字节,允许的最大长度为 2000 个字节。

示例

当创建带有 CHAR 数据类型列的表时,默认情况下,您以字节为单位提供列的长度。BYTE 与默认值相同。

如果使用 CHAR 限定符。则以字符为单位提供列长。

  • 示例 1

将一个 1 字节的字符串插入 CHAR(10) 类型的列中,在存储该字符串之前,将为其空白填充为 10 个字节。

  • 示例 2

CHAR(10 CHAR),表示以字符为单位提供列长。