- 即使已经参加工作快满一年了,但是却连数据库里面数据的长度都一直没搞清楚到底代表什么意思。
- 类型是指数据存储类型,这个大家都知道,比如int类型代表4字节(Byte),1字节=8bit,即1B=8b.子节是计算机文件大小的基本计算单位,主要用于应用层,用于客户来识别文件大小的。而bit是用于物理层,数据链路层的传输的,是基于二进制的传输。所以这里int类型可以存储4*8=32位。可以存储十进制-2147483648 到 2,147,483,647。
- 那么后面的的数据长度代表什么呢?能约束到数据的存储大小么?
- 当我把为int 类型的长度变为1,username的长度也变为1
- id没问题,而username没存进去。为什么呢?因为这是当为varchar字符类型的时候,这里的长度是指字符的个数。这里长度为1,那么就只能输1个字符。
- 而int类型却可以,这个长度并没有约束到int类型数字的输入,仍然可以输入-2147483648 到 2,147,483,647。只不过在显示上会有点区别。当Int类型的长度为11时候,插入数字为1的时候,那么就是0000000001.存储的时候,前面自动补齐10个零,当长度为1的时候,就不用补零了,当然使用mysql看不出来,他做了优化,取出来显示的时候是把0给去掉了。所以int类型的长度对于平常开发来说,实际用途并不大。
数据库中数据长度到底代表什么呢?
最新推荐文章于 2022-06-20 17:20:40 发布