1.什么是数据类型
2.mysql常见数据类型
整数型 |
---|
类型 | 大小 | 范围(有符号) | 范围(无符号) | 用途 |
TINYINT
| 1字节 |
(-128
,
127)
|
(0
,
255)
|
小整数值
|
SMALLINT
| 2字节 |
(-32768
,
32767)
|
(0
,
65535)
|
大整数值
|
MEDIUMINT
| 3字节 |
(-8388608
,
8388607)
|
(0
,
16777215)
|
大整数值
|
INT
| 4字节 |
(-2147483648
,
2147483647)
|
(0
,
4294967295)
|
大整数值
|
BIGINT
| 8字节 | (负的2的32次方减1,2的32次方减1) |
(0
,
2
的
64
次方减
1)
|
极大整数值
|
ps:1字节为8位,也就是8byte,二进制表示就是0 0 0 0 0 0 0 0,换算为十进制最大范围就是2的8次方减1,为255
浮点型 |
---|
FLOAT(m,d
)
|
4
字节
|
单精度浮点型
|
备注:
m
代表总个数,
d
代表小数位个数
|
DOUBLE(m,d
)
|
8
字节
|
双精度浮点型
|
备注:
m
代表总个数,
d
代表小数位个数
|
定点型 |
---|
DECIMAL(m,d
)
|
大小依赖于
M
和
D
的值
|
备注:
m
代表总个数,
d
代表小数位个数
|
字符串类型
|
---|
类型
|
大小
| 备注 |
CHAR
|
0-255
字节
|
定长字符串
|
VARCHAR
|
0-65535
字节
|
变长字符串
|
TINYTEXT
|
0-255
字节
|
短文本字符串
|
TEXT
|
0-65535
字节
|
长文本数据
|
MEDIUMTEXT
|
0-16777215
字节
|
中等长度文本数据
|
LONGTEXT
|
0-4294967295
字节
|
极大文本数据
|
ps:char的优缺点:存取速度比varchar更快,但是比varchar更占用空间
varchar的优缺点:比char省空间。但是存取速度没有char快
时间型
|
---|
数据类型
| 大小 | 格式 | 备注 |
date
| 3字节 |
yyyy-MM-dd
|
存储日期值
|
time
| 3字节 |
HH:mm:ss
|
存储时分秒
|
year
| 1字节 |
yyyy
|
存储年
|
datetime
| 8字节 |
yyyy-MM-dd HH:mm:ss
|
存储日期
+
时间
|
timestamp
| 4字节 |
yyyy-MM-dd HH:mm:ss
|
存储日期
+
时间,可作时间戳
|
CREATE TABLE test_time (
date_value date,
time_value time,
year_value YEAR,
datetime_value datetime,
timestamp_value TIMESTAMP
) ENGINE = INNODB charset = utf8;
insert into test_time values(now(), now(), YEAR(NOW()), now(), now());
SELECT * FROM test_time
