我想知道什么之间的区别BigInt,MediumInt以及Int在...这似乎很明显,他们将允许更大的数字; 但是,我可以使一个Int(20)或一个BigInt(20)看起来似乎不一定与大小有关。
一些见识会很棒,只是有点好奇。我使用MySQL已有一段时间,并在选择类型时尝试满足业务需求,但是我从不理解这一方面。
见http://dev.mysql.com/doc/refman/8.0/en/numeric-types.html
INT 是一个四字节有符号整数。
BIGINT 是一个八字节有符号整数。
它们各自接受的值不超过可以存储在其各自字节数中的值。表示中的2 32个值INT和中的2 64个值BIGINT。
20 in INT(20)和BIGINT(20)几乎没有任何意义。这是显示宽度的提示。它与存储无关,也与列将接受的值的范围无关。
实际上,它仅影响以下ZEROFILL选项:
CREATE TABLE foo ( bar INT(20) ZEROFILL ); INSERT INTO foo (bar) VALUES (1234); SELECT bar from foo;
+----------------------+ | bar | +----------------------+ | 00000000000000001234 | +----------------------+ 对于MySQL用户来说,看到INT(20)并假设它是一个大小限制(类似于)是一个常见的困惑源CHAR(20)。不是这种情况。来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。