学习MySQL之数据类型(四)

时间:2023-01-25 03:18:51

一、   整数类型

整数类型

占用字节

最小值

最大值

TINYINT

1

有符号 -128

无符号0

有符号127

无符号255

SMALLINT

2

有符号-3 2768

无符号0

有符号3 2767

无符号6 5535

MEDIUMINT

3

有符号-83 8608

无符号0

有符号838 8607

无符号1677 7215

INT / INTEGER

4

有符号-21 4748 3648

无符号0

无符号21 4748 3647

无符号42 9496 7295

BIGINT

8

有符号-9E19

无符号0

有符号9E19

无符号1E20

二、   浮点数类型:

    判断使用哪种浮点类型,根据实际情况来定,当需要精确到小数点后10位以上,就需要选择DOUBLE。

浮点数类型

占用字节

最小值

最大值

FLOAT

4

±1.75494651E-38

±3.402823466E+38

DOUBLE

8

±2.2250738585072014E-308

±1.7976931348623157E+308

 

二、  字符串类型

  1. 1.  CHAR系列字符串

    存储少量字符。如存储的字符串长度经常变换,可以选用VARCHAR。

字符串类型

占用字节

描述

CHAR(M)

M

M为 ( 0 ~ 255 ) 之间整数

VARCHAR(M)

M

M为 ( 0 ~ 6 5535 ) 之间整数

 

  1. 2.  TEXT系列字符串

字符串类型

占用字节

描述

TINYTEXT

0~255

值的长度为+2个字节

TEXT

0~6 5535

值的长度为+2个字节

MEDIUMTEXT

0~1 6777 2150

值的长度为+3个字节

LONGTEXT

0~42 9496 7295

值的长度为+4个字节

  1. 3.  BINARY系列字符串

    与CHAR系列非常相似,但BINARY可以存储二进制数据(图片、音频、视频)。当存储的二进制数据长度经常变化,可选择VARBINARY。

字符串类型

占用字节

描述

BINARY(M)

M

允许长度为 0~M

VARBINARY(M)

M

允许长度为 0~M

  1. 4.   BLOB系列字符串

    与TEXT系列相似,但BLOB可以存储二进制数据(图片、音频、视频)。

字符串类型

字节

TINYBLOB

0~255

BLOB

0~216次方  64KB

MEDIUMBLOB

0~224次方  16MB

LONGBLOB

0~232次方  4GB

 

三、             日期和时间类型

 

日期和时间类型

占用字节

最小值

最大值

DATE

4

1000-01-01

9999-12-31

DAETTIME

8

1000-01-01 00:00:00

9999-12-31 23:59:59

TIMESTAMP

4

19700101080001

2038年某个时刻

TIME

3

-835:59:59

835:59:59

YEAR

1

1901

2155

 

四、   定点数类型

    其有效值范围,由M和D决定。

定点数类型

占用字节

最小值

最大值

DEC(M,D)/DECIAL(M,D)

M+2

与DOUBLE相同

与DOUBLE相同

 

五、  位类型

位类型

占用字节

最小值

最大值

BIT(M)

1~8

BIT(1)

BIT(64)