MySQL数据类型

一、定点数类型

定点数类型 字节
DEC(M,D) M+2
DECIMAL

M表示的数据的宽度
D表示小数点位数

float和double存储数据时存储的是近似值。
decimal存储的是字符串,提高了更多的精度。
在需要表示金额等货币类型时,优先选择decimal数据类型。

二、浮点数类型

浮点数类型 字节
float 4
double 8

三、位类型

位类型 字节
BIT(M) 1~8

四、整数类型

整数类型 字节
TINYINT 1
SMALLINT 2
MEDIUMINT 3
INT和INTEGER 4
BIGINT 8

五、日期类型

日期和时间类型 字节
DATE 4
DATETIME 8
TIMESTAMP 4
TIME 3
YEAR 1

如果插入的值超过了该类型的取值范围,则会插入默认值。

在具体应用中,各种日期和时间类型的应用场合如下:
年月日:date
年月日时分秒:datetime
需要经常插入或者更新日期为当前系统时间,或者需要让不同时区的用户使用:timestamp
时分秒:time
年份:year

六、字符串类型

char系列字符串类型 字节
char(M) M
varchar(M) M

如果需要存储少量字符串,则可以选择char和varchar类型。
如果需要判断所存储字符串长度是否经常变化,如果经常发生变化,则可以选择varchar类型,否则选择char类型。

Text系列字符串类型 字节
TINITEXT 0~255
TEXT 0~65535
MEDIUMTEXT 0~167772150
LONGTEXT 0~4294967295

一般用于需要存储大量字符串(存储文章内容的纯文本)

binary系列字符串类型 字节
binary(M) M
varbinary(M) M

与char和varchar类似,但可以存储二进制数据(例如图片、音乐或视频文件

blob系列字符串类型 字节
tinyblob 0~255
blob 0~2E16
mediumblob 0~2E24
longblob 0~2E32

与text系列类似,但可以存储二进制数据(例如图片、音乐或视频文件)

上一篇:orcale 创建学生表


下一篇:【平台开发】— 9.列表分页