首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以对md5()值使用VARCHAR(32)吗?

我可以对md5()值使用VARCHAR(32)吗?
EN

Stack Overflow用户
提问于 2013-02-17 22:39:04
回答 2查看 23.4K关注 0票数 19

我可以在MySQL数据库中为md5()值使用长度为32且类型为VARCHAR的字段吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-17 22:39:44

由于md5总是生成固定长度的结果,因此最好使用CHAR(32)

票数 40
EN

Stack Overflow用户

发布于 2020-03-30 10:40:04

最好将CHAR(32)latin1字符集一起使用,或者如果您想节省更多空间,则使用BINARY(16)

代码语言:javascript
复制
CREATE TABLE ... (
    ...
    md5 CHAR(32) CHARACTER SET 'latin1' NOT NULL
    ...

从5.7开始,MySQL使用utf8mb4作为默认字符集,使用utf8mb4CHAR(32)占用128个字节,比VARCHAR(32)更糟糕。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14922208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档