Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我可以在 MySQL 数据库中使用长度为 32 且类型为 VARCHAR 的字段来获取 md5() 值吗?
由于 md5 总是产生固定长度的结果,最好使用 CHAR(32)
最好CHAR(32)与latin1字符集一起使用,或者BINARY(16)如果您想节省更多空间。
CHAR(32)
latin1
BINARY(16)
CREATE TABLE ... ( ... md5 CHAR(32) CHARACTER SET 'latin1' NOT NULL ...
MySQLutf8mb4从 5.7 开始用作默认字符集,并且CHAR(32)需要utf8mb4128 个字节,比VARCHAR(32).
utf8mb4
VARCHAR(32)