mysql三大列类型
数值型 
  整型
     Tinyint/ smallint/ mediumint/int/ bigint(M) unsigned zerofill
  
整型系列所占字节与存储范围的关系.
定性: 占字节越多,存储范围越大.

整型系统的可选参数 : XXint(M)  unsigned zerofill

: age tinyint(4) unsigned ,或者  stunum smallint(6) zerofill;

Unsigned: 代表此列为无符号类型会影响到列的存储范围. (范围从0开始)

(不加unsinged, 则该列默认是有符号类型,范围从负数开始)

 

 

 

Zerofill: 代表0填充如果该数字不足参数M则自动补0, 补够M.

1: 如果没有zerofill属性单独的参数M,没有任何意义.

2:如果设置某列为zerofill,则该列已经默认为 unsigned,无符号类型.

小数型

 

Float(M,D),decimal(M,D)

  M"精度" ---->代表"总位数",D"标度",代表小数位.(小数右边的位数)

 

 

浮点数占多大的空间呢

答: float 能存10^38 ,10^-38

如果M<=24, 4个字节,否则占8字节

 

用来表示数据中的小数,除了float---浮点.

还有一种叫定点decimal,定点是把整数部分和小数部分,分开存储的.

float精确,他的长度是变化的.

 

空间上的区别:

Float(M,D), M<=24, 4个字节, 24 <M <=53, 8个字节

Decimal () ,变长字节.

 

区别: decimalfloat精度更高适合存储货币等要求精确的数字,

Text : 文本类型,可以存比较大的文本段,搜索速度稍慢.

因此,如果不是特别大的内容,建议用char,varchar来代替.

Text 不用加默认值 (加了也没用).

 

Blob,是二进制类型,用来存储图像,音频等二进制信息.

意义: 2进制,0-255都有可能出现.

Blob在于防止因为字符集的问题,导致信息丢失.

比如:一张图片中有0xFF字节这个在ascii字符集认为非法,在入库的时候,被过滤了.