你可以将CHAR设置为NULL或空字符串吗?

时间:2011-05-13 19:27:18

标签: mysql null char

我过去没有使用过CHAR,因为我似乎过多地使用VARCHAR;我最近在适当时尝试使用CHAR&根据我的理解,当数据在某一列中的长度相同时,你会使用它(否则用空格填充)。

因为所有数据都应该是相同的长度,我想知道CHAR字段可以是NULL还是空字符串?对于特定字段没有值而其他字段有效的情况。

2 个答案:

答案 0 :(得分:7)

您的问题的答案是肯定的。

是的,CHAR类型可以为NULL。我相信每个列类型都允许NULL。

是的,CHAR类型可以是空字符串。 DB不会看到与任何其他字符串不同的空字符串。我不建议使用空字符串,因为在几乎每种情况下,空字符串(缺少任何字符)都试图表示缺少数据,这就是NULL的用途。

如果您想了解更多关于MySQL中CHAR与VARCHAR差异的具体细节......

MySQL 5.0 Reference - The CHAR and VARCHAR Types

答案 1 :(得分:2)

是的,可以使用NULL和空字符串。正如您所指出的那样,数据 与列中的长度不同,任何较小的数据都只是用空格填充以填充列。