MySQL数据类型

MySQL支持多种数据类型,主要有数值类型、日期类型、日期/时间类型和字符串类型。

数值数据类型:包括整数类型TINYINT, SMALLINT, MEDIUMINT ,INT, BIGINT,浮点小数数据类型FLOAT和DOUBLE,定点小数类型DECIMAL。

日期/时间类型:包括YEAR,TIME,DATE,DATETIM和TIMESRAMP。

字符串类型:包括CAHR,VARCHAR,BINARY,VARBINARY,BLOB,TEXT,ENUM和SET等。

日期时间类型:


枚举和set


如何选择数据类型:

为了优化存储,提高数据库性能,要使用最精确的类型,就是该类型使用的存储最少。

整数和浮点数:

若使用整数,则MEDIUMINT UNSIGNED是最好的理性,若存储小数,则使用FLOAT类型。

浮点数和定点数:

浮点数FLOAT,DOUBLE相对于定点数DECIMAL的优势:在长度一定,浮点数能表示更大的数据范围,DECIMAL以字符串存储,如果进行比较数值,最好使用DECIMAL类型。

日期和时间类型:

存储范围较大的日期最好使用DATETIME。需要插入记录同时插入当前时间时,使用TIMESTAMP,TIMESTAMP在空间上比DATETIME更有效。

CHAR和VARCHAR:

存储不大,在速度上有要求时,用CHAR类型。繁殖使用VARCHAR类型。

对于MyISAM存储引擎:使用笃定长度代替可变长度的数据列,使数据检索更快,用空间换时间。

对于InnoDB存储引擎:VARCHAR比较好,其节省空间。

ENUM和SET:

EUMN只能取单值,需要从多个值中选取一个时,使用ENUM。

SET可取多值,需要取多个值的时候,适合用SET类型。

BLOB和TEXT

BLOB只要存储图片,音频信息等。

TEXT只能存储文本文件。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值