mysql数据库设计---------怎么选择一个合适的数据长度

首先要知道先把不同类型区分开来
参考:https://www.cnblogs.com/bulh/articles/10650179.html
https://blog.csdn.net/lzh2018/article/details/105725870

1、数值类型

在这里插入图片描述

2、字符串类型

在这里插入图片描述

3、日期和时间类型

在这里插入图片描述

一般主要是对数值和字符串类型做长度限制的
对数值类型来说,设置的长度是其值的长度大小,就是多少位数
eg:数据表int(11)类型设置
因为int是4个字节,也就是4*8=32位,当有符号的时候,其中一位用于表示符号,剩下31位用于表示数字,31位表示的最大数字是“231-1=2,147,483,647”(这是正数),最小的数是“-231=-2,147,483,648”,数字是10位,符号一位,一共11位,所以,mysql int型为什么默认是11位,就是因为11位是它的最大长度

在这里插入图片描述
所以总的来说int(m)无论m设置成什么,他的最大值是不变的,除了设置自动补全外并没什么区别,保持默认就好了。

字符型来说:
varchar为变长类型,就是当装进来的字符不到是,会自动缩小自己的长度!!!
varchar(255) 是为了索引而设置,能够存储255个汉字。
varchar(255) 后来成为一些人使用的惯性,其实应根据实际业务场景设置长度。
varchar(n) 中的n在mysql 5.0.3之前表示n个字节,之后表示n个字符,按照实际使用的数据库字符编码集,占用不同字节数量,比如GBK、UTF8MB4等等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值