对于使用utf-8编码的数据库,char或varchar更好吗?

时间:2016-11-05 17:43:16

标签: mysql encoding utf-8

我正在创建一个用户表,我将存储他们的所有信息:用户名,密码等。我的问题是:使用utf-8编码表或CHAR在VARCHAR中存储用户名是否更好。我问,因为char只有1个字节,utf-8为一些字符编码最多3个字节,我不知道我是否会丢失数据。在这种情况下甚至可以使用CHAR还是必须使用VARCHAR?

1 个答案:

答案 0 :(得分:2)

通常,规则是在以下情况下使用CHAR编码:

  • 您的短代码长度相同(想想州名缩写)。
  • 有时,如果您的短代码长度不同,但您可以一方面计算字符数。
  • 当说权力时,你必须使用CHAR
  • 当您想要演示字符串末尾的空格填充如何导致意外行为时。

在其他情况下,请使用VARCHAR()。实际上,数据库的用户不希望在字符串末尾有一堆空格。