gpt4 book ai didi

mysql - 数据库 MySql 设计 - utf8 字段的 varchar 长度::1。密码 2. 用户名 3. 邮箱

转载 作者:可可西里 更新时间:2023-11-01 07:19:26 25 4
gpt4 key购买 nike

大多数时候我定义 varchar(255) length auto。

但现在我在想为 utf8 字段定义多少 varchar 长度最好:

  1. 密码

  2. 用户名

  3. 电子邮件

如果这个字段应该定义小于 varchar 255,它会提高多少性能?

谢谢

最佳答案

如果您使用 SHA1 哈希,“密码”应该是 char(40)。如果您确定散列的情况始终相同,则这可能具有二进制排序规则。这会给你更好的表现。如果不是,请使用 latin1,但不要使用 utf8。

'email'...使用 255,你无法知道某人的电子邮件地址有多长。

对于用户名,我会使用您的最大用户名长度。 20 或 30 可能会很好。

如果您在字符字段上有索引(特别是如果它是 PK 的一部分),请非常小心地选择长度,因为越来越长的索引可能会严重降低性能(并增加内存使用量)。

此外,如果在索引中使用 UTF8 char 字段,则必须注意,MySQL 保留的字节数是该字段实际字符长度的 3 倍,为最坏的情况做准备(UTF8 可能将某些字符存储在 3字节)。这也会导致内存不足。

关于mysql - 数据库 MySql 设计 - utf8 字段的 varchar 长度::1。密码 2. 用户名 3. 邮箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3022305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com