---
title: "CHAR 和 VARCHAR - OceanBase 数据库 V4.3.3 | OceanBase 文档中心"
description: "CHAR 和 VARCHAR CHAR 和 VARCHAR 类型相似，但区别于存储和检索的方式、最大长度以及是否保留尾部空格。 CHAR CHAR 类型声明的长度为可以存储的最大字符数。例如， CHAR(30) 表示最多可容纳 30 个字符。 语法如下： [NATIONAL] CHAR[(M)] [CHARACTER…"
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.3

# CHAR 和 VARCHAR

更新时间：2026-04-10 12:01:00

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.3/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/100.basic-elements-of-mysql-mode/100.data-type-of-mysql-mode/400.string-of-mysql-mode/200.char-and-varchar-of-mysql-mode.md)  

`CHAR` 和 `VARCHAR` 类型相似，但区别于存储和检索的方式、最大长度以及是否保留尾部空格。

## CHAR

`CHAR` 类型声明的长度为可以存储的最大字符数。例如，`CHAR(30)` 表示最多可容纳 30 个字符。

语法如下：

```sql
[NATIONAL] CHAR[(M)] [CHARACTER SET charset_name] [COLLATE collation_name]

```

`CHARACTER SET` 用于指定字符集。如果需要，可以使用 `COLLATE` 属性以及其他属性指定字符集的排序规则。如果指定 `CHARACTER SET` 的二进制属性，则会将列创建为相应的二进制字符串数据类型，`CHAR` 会变为 `BINARY`。

`CHAR` 列长度可以是 0 到 256 之间的值。存储 `CHAR` 值时，会用空格右填充到指定的长度。

对于 `CHAR` 列，无论 SQL 模式如何，都会以静默方式截断插入值中多余的尾部空格。检索 `CHAR` 值时，如果没有启用 `PAD_CHAR_TO_FULL_LENGTH` SQL 模式，就会删除尾部空格。

## VARCHAR

`VARCHAR` 类型声明的长度 `M` 为可以存储的最大字符数。例如，`VARCHAR(50)` 表示最多可容纳 50 个字符。

语法如下：

```sql
[NATIONAL] VARCHAR(M) [CHARACTER SET charset_name] [COLLATE collation_name]

```

`CHARACTER SET` 用于指定字符集。如果需要，可以使用 `COLLATE` 属性以及其他属性指定字符集的排序规则。如果指定 `CHARACTER SET` 的二进制属性，则会将列创建为相应的二进制字符串数据类型，`VARCHAR` 会变为 `VARBINARY`。

`VARCHAR` 列长度可以指定为 0 到 262144 之间的值。

与 `CHAR` 相比，`VARCHAR` 值存储形式为 1 字节或 2 字节的长度前缀加数据。长度前缀表示值中的字节数。如果值不超过 255 个字节，则该列占用一个字符，如果值可能超过 255 个字节，则占用两个字符。

对于 `VARCHAR` 列，无论 SQL 模式如何，超过列长度的尾部空格在插入之前会被截断并生成告警。

`VARCHAR` 值在存储时不会被填充。根据标准 SQL，在存储和检索值时会保留尾部空格。

另外，OceanBase 数据库还支持扩展类型 `CHARACTER VARYING(m)`，但是推荐使用 `VARCHAR(m)`。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
