我需要在MySQL中创建一个简单的表格,其中包含用户名和密码字段。由于用户名必须是唯一的,因此将其作为主键是有意义的。
作为主键,使用CHAR()
还是VARCHAR()
更好呢?
我需要在MySQL中创建一个简单的表格,其中包含用户名和密码字段。由于用户名必须是唯一的,因此将其作为主键是有意义的。
作为主键,使用CHAR()
还是VARCHAR()
更好呢?
最好使用用户ID索引,这样对于连接操作比使用char / varchar更快。现在花费的两秒钟可以帮助你避免在将来意外扩展架构功能时节省很多时间。
需要考虑的一些陷阱:
我在我所工作的任何MySQL数据库中都很少看到使用CHAR。我会选择VARCHAR。
例如,对于CHAR(30),整个30个字符都存储在表中,这意味着每个条目将占用相同的空间,即使您的用户名只有10个字符长。
使用VARCHAR(30),它只会使用足够存储您输入的字符串的空间。
在小表上,这不会有太大的区别,但在大表上,VARCHAR应该能够使其整体更小。