我可以在MySQL数据库中为md5()值使用长度为32且类型为VARCHAR的字段吗?
发布于 2013-02-17 22:39:44
由于md5总是生成固定长度的结果,因此最好使用CHAR(32)
发布于 2020-03-30 10:40:04
最好将CHAR(32)与latin1字符集一起使用,或者如果您想节省更多空间,则使用BINARY(16)。
CREATE TABLE ... (
...
md5 CHAR(32) CHARACTER SET 'latin1' NOT NULL
...从5.7开始,MySQL使用utf8mb4作为默认字符集,使用utf8mb4的CHAR(32)占用128个字节,比VARCHAR(32)更糟糕。
https://stackoverflow.com/questions/14922208
复制相似问题