MYSQL数据类型

xiaoxiao2025-04-06  21

如何选择数据类型

整数类型和浮点数类型

整数类型和浮点数类型最大的区别在于能否表达小数,整数类型不能表示小数,而浮点数类型可以表示小数,不同的整数类型的取值范围不同,TINYINT类型的取值范围是0-255.如果字段的最大值不超过255,那选择TINYINT类型就足够了,BIGINT类型的取值范围最大,最常用的整数类型是INT类型。

浮点数类型包括float类型和double类型。double类型的精度比float类型高,如果需要精确到小数点后10位以上,就应该选择double类型。

浮点数类型和定点数类型

对于浮点数和定点数,当插入之的精度高于实际定义的精度,系统自动进行四舍五入处理,其目的是为了使该值的精度达到要求,浮点数进行四舍五入系统不会报警,定点数会出现警告。

在未指定精度的情况下,浮点数和定点数有其默认的精度,float型和double型会默认会保存实际精度,这个精度与操作系统和硬件精度有关,decimal型默认整数位为10,小数位为0,即默认为整数。

在MySQL中定点数比浮点数精度高,而且浮点数会出现误差,如果要对数据的精度要求比较高,应该选择定点数。

 

CHAR类型和VARCHAR类型

CHAR类型的长度是固定的,VARCHAR类型长度是在范围内可变的,因此VARCHAR类型占用的空间比CHAR类型小,而且,VARCHAR类型比CHAR类型灵活,对于长度变化比较大的字符串类型,最好选择VARCHAR类型。

虽然CHAR类型占用的空间比较大,但是CHAR类型的处理速度比VARCHAR快,因此,对于长度变化不大和查询速度要求较高的的字符串类型,最好选择CHAR类型。

 

ENUM类型和SET类型

ENUM类型最多可以有65535个成员,而SET类型最多只能包含64个成员,两者的取值只能在成员列表中选取,ENUM类型只能从成员中选择一个,而SET类型可以选择多个。

因此对于多个值中选取一个的,可以选择ENUM类型,例如性别字段可以定义成ENUM类型,对于可以选取多个值的字段,可以选择SET类型,例如爱好字段就可以选择SET类型,因为可能有多种爱好。

本章介绍了MySQL数据库常见的数据类型,整数类型,浮点数类型,日期和时间类型和字符串类型,是数据中使用最频繁的数据类型。要重点掌握前面那几种数据类型。应考虑各种数据类型的特点,根据不同的需要选择相应的数据类型

转载请注明原文地址: https://www.6miu.com/read-5027619.html

最新回复(0)