MySQL数据类型和存储引擎简介

一、MySQL中的数据类型
(一)整数类型的存储范围
1、TINYINT(字节为1)
(1)有符号值:-128到127(-27到27-1)
(2)无符号值:0到255(0到2^8-1)
2、SMALLINT(字节为2)
(1)有符号值:-32768到32767(-215到215-1)
(2)无符号值:0到65535(0到2^16-1)
3、MEDIUMINT(字节为3)
(1)有符号值:-8388608到8388607(-223到223-1)
(2)无符号值:0到16777215(0到2^24-1)
4、INT(字节为4)
(1)有符号值:-2147683648到2147683647(-231到231-1)
(2)无符号值:0到4294967295(0到2^32-1)
5、BIGINT(字节为8)
(1)有符号值:-9223372036854775808到9223372036854775807(-263到263-1)
(2)无符号值:0到18446744073709551615(0到2^64-1)
6、BOOL,BOOLEAN(字节为1)
等价于TINYINT(1)0,0为false,其余为true
(二)浮点类型
1、FLOAT[(M,D)]
存储范围:负数取值范围为-3.40E+38到-1.17E-38、0和1.175E-38到3.40E+38(M是数字总位数,D是小数点后面的位数。如果M和D被省略,根据硬件允许的限制来保存值。单精度浮点数精确到大约7位小数位。)
字节:4
2、DOUBLE[(M,D)]
存储范围:-1.79E+308到-2.22E-308、0和2.22E-308到1.79E+308
字节:8
3、DECIMAL[(M,D)]
存储范围:和DOUBLE一样,内部以字符串形式存储数值
字节:M+2
(三)字符串类型
1、CHAR(M)
存储需求:M个字节,0<=M<=255
2、VARCHAR(M)
存储需求:L+1个字节,其中L<=M且0<=M<=65535
3、TINYTEXT
存储需求:L+1个字节,其中L<2^8
4、TEXT
存储需求:L+2个字节,其中L<2^16
5、MEDIUMTEXT
存储需求:L+3个字节,其中L<2^24
6、LONGTEXT
存储需求:L+4个字节,其中L<2^32
7、ENUM(‘value1’,‘value2’,…)
存储需求:1或2个字节,取决于枚举值的个数(最多65535个值)
8、SET(‘value1’,‘value2’,…)
存储需求:1、2、3、4或者8个字节,取决于set成员的数目(最多64个成员)
(四)日期时间类型
1、TIME
存储范围:-838-59-59~838-59-59
存储需求:3
2、DATE
存储范围:1000-01-01~9999-12-31
存储需求:3
3、DATETIME
存储范围:1000-01-01 00:00:00~9999-12-31 23:59:59
存储需求:8
4、TIMESTAMP
存储范围:1970-01-01 00:00:01 UTC~2038-01-19 03:14:07
存储需求:4
5、YEAR
存储范围:1901~2155
存储需求:1
(五)二进制类型
一般保存视频和图片的路径
二、MySQL中的存储引擎
(一)定义
存储引擎是指表的类型。数据库的存储类型决定了表在计算机中的存储方式。用户可以根据不同的存储方式、是否进行事务处理等来选择合适的存储引擎
(二)存储引擎的查看
1、查看MySQL支持的存储引擎
SHOW ENGINE
2、查看显示支持的存储引擎信息
SHOW VARIABLES LIKE ‘have%’
3、查看默认的存储引擎
SHOW VARIABLES LIKE ‘storage_engine’
(三)常用存储引擎及特点
1、InnoDB存储引擎
2、MyISM存储引擎
3、MEMORY存储引擎

发布了79 篇原创文章 · 获赞 1 · 访问量 1490

猜你喜欢

转载自blog.csdn.net/DAN_L/article/details/104604716