1.列类型之数值
(1)整型
MySQL数据库⽀持五种整型类型,包括:TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT五种。
整型类型占⽤空间和取值范围
类型 字节 最⼩值 最⼤值
TINYINT 1 有符号:-128 ⽆符号:0 有符号:127 ⽆符号:255
SMALLINT 2有符号:-32768⽆符号:0有符号:32767⽆符号:65535
MEDIUMINT 3有符号:-8388608⽆符号:0有符号:8388607⽆符号:16777215
INT/INTEGER 4有符号:-2147483648⽆符号:0有符号:2147483647⽆符号:4294967295
BIGINT 8 有符号:-9223372036854775808⽆符号:0 有符号:9223372036854775807⽆符号:18446744073709551615
五种整型的适⽤场景:
TINYINT,年龄,包含在0~255之间;
SMALLINT,端⼝号,包含在0~65535之间;
MEDIUMINT,中⼩型⽹站注册会员,1600万够⽤;
INT,⾝份证编号,42亿可以⽤很久;
BIGINT,Twitter微博量,⼏百亿
(2)浮点型(⾮精确)
MySQL数据库⽀持两种浮点类型:FLOAT(单精度)和DOUBLE(双精度)两种
浮点型(⾮精确)占⽤空间和取值范围
类型 字节 范围
FLOAT 4 正数范围:1.175494351E-38~3.402823466E+38,负数范围:-3.402823466E+38~-1.175494351E-38
DOUBLE 8 正数范围:1.7976931348623157E-308~2.2250738585072014E+308
负数范围:-2.2250738585072014E+308~-1.7976931348623157E-308
(3)定点型(精确)
浮点型由于内部的存储⽅式是数值,导致它在⼀定程度上取得的是近似值⽽⾮精确值。如果使⽤定点型,那么就可以精确取得⼩数部分,因
为它内部存储⽅式是字符串形式。
定点型(精确)占⽤空间和取值范围
类型 字节 范围
DECIMAL/NUMERIC M+2 M最⼤65位,D最⼤30位。
创建⼀个定点型格式:DECIMAL(M,D),表⽰⼩数点D位,整数部分M位及M位内。
2.列类型之⽇期
MySQL数据库中有五个可⽤的⽇期时间数据类型,分别为:DATE、DATETIME、TIME、YEAR、TIMESTAMP。
⽇期时间类型占⽤空间和取值范围
类型 字节 最⼩值 最⼤值
YEAR 1 1901 2155
TIME 3 -838:59:59838:59:59
DATE 4 1000-01-01 9999-12-31
TIMESTAMP 4 1970-01-01 00:00:00 2038-01-19 03:14:07
DATETIME 8 1000-01-01 00:00:00 9999-12-31 23:59:59
评论0