MySql优化(一)如何选择数据类型

选择合适的数据类型在MySQL数据库设计中至关重要,因为它直接影响存储效率和查询速度。整数类型如TINYINT、INT等,根据需求可以选择UNSIGNED以增加正数范围。实数类型中,FLOAT运算速度较快,适合小规模浮点计算。字符串类型中,VARCHAR节省空间,适合可变长度数据,而CHAR适合固定长度数据。BLOB和TEXT用于大量数据存储,DATE和DATETIME处理日期和时间,TIMESTAMP支持时间戳转换。枚举和SET类型节省空间,但不适用于标识列。标识列推荐使用整数类型,避免使用NULL值,选择最小的数据类型,并考虑使用数据库提供的转换函数优化存储。
摘要由CSDN通过智能技术生成

- 选择合适的数据类型

在创建初期数据类型的选择非常重要,错误的数据类型会导致资源的浪费和检索的速度,如何选择数据类型重点在合适二字。如何选择呢先让我们看看不同的类型介绍

类型介绍

整数

TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT 分别是 8 ,16,24,32,64位储存空间 范围从-2n-1 到 2n-1 -1N是空间位数
整数类型有UNSIGNED属性 表示不许有负值 这可以提高正数上线比如 TINYINT.UNSIGNED可以存储0-255,而不加UNSIGNED
范围是-128至127
补充知识 int(1)和int(10)储存空间是一样的 数字只是显示范围

实数

实数是带有小数部分的数字,然而不只是为了储存小数部分 也可以使用DECIMAL 储存比 BIGINT更大的数字
FLOAT比DOUBLE 运算更快(因为CPU支持原生浮点计算)

字符串类型

varchar用于储存可变长字符串,它比定长类型更节省空间,因为它仅使用必要的空间
char类型是定长的 CHAR适合储存很短的字符串或者所有值都接近一个长度的 例如MD5加密密码。对于经常变更的数据CHAR也比VARCHAR 更好 因为定长类型不易产生碎片。
BLOB和TEXT类型都是为大数据而设计 分别用二进制和字符方式储存 当BLOB和TEXT值太大时 InnoDB会使用专门的外部储存区进行储存

枚举</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值