486   MySQL

一,整型

 

QQ图片20160314231221

 

解释下Signed和Unsigned

Signed表示有符合,数字由正负数字组成;

Unsigned表示无符号,数字从0开始数起;

常用数字类型如下图所示:

其中Bytes是字节,比如int类型共4个字节,1个字节长度2^8,所以Unsigned总长度范围是0到2^32-1

 

二,浮点型

QQ图片20160314234953

比如float(5,3),总位数是5,小数是3,所以整数位是2,超出整数范围会报错,小数位超出采近似值,不足就自动补齐;

 

三,字符型
char:保存固定长度的字符串,1个字节,长度范围0-255(2^8-1);
varchar:保存可变长度的字符串,2个字节,长度范围0-65536(2^16-1);

下图是官网给出的示例

QQ图片20160314230207

 

四,日期型

 

QQ图片20160314232317

其中说下Datetime和Timestamp的区别

1,时间范围不同,Datetime用8个字节保存,范围1000-01-01 00:00:00 ~ 9999-12-31 23:59:59;而Timestamp用4个字节,范围变成1970-01-01 08:00:01到2038-01-19 11:14:07

2,Timestamp受时区影响,但是Datetime不会,官方英文说法如下:

MySQL converts TIMESTAMP values from the current time zone to UTC for storage, and back from UTC to the current time zone for retrieval. (This does not occur for other types such as DATETIME.)

3,Timstamp会自动更新,只需在表格添加该字段,无需手动填充时间,默认是系统时间




Leave a Reply

Your email address will not be published. Required fields are marked *