mysql 如果我在Char数据类型中存储的字符少于它的指定长度会怎么样?

lp0sw83n  于 2023-02-11  发布在  Mysql
关注(0)|答案(1)|浏览(208)

我知道***char***数据类型存储固定长度的字符串。如果我在数据类型为***char(10)***的字段中存储一个5个字符的字符串会怎样?SQL将如何存储/管理该数据?

6yt4nkrj

6yt4nkrj1#

它们用5个空格右填充。
As the docs说:
在存储CHAR值时,将用空格将其右填充到指定长度。在检索CHAR值时,除非启用了PAD_CHAR_TO_FULL_LENGTH SQL模式,否则将删除尾随空格。

| Value  | CHAR(4) | Storage Required |
|--------|---------|------------------|
| ''     | '    '  | 4 bytes          |
| 'ab'   | 'ab  '  | 4 bytes          |
| 'abcd' | 'abcd'  | 4 bytes          |

相关问题