2015-10-29
  • 作者:tomfans
  • 本文地址:http://f-olivia.github.io/database/2015/09/26/mysql/
  • 转载请注明出处

#####三、数值类型

支持标准SQL2003所有数值类型,在前面“概述”已经描述过,具体:

1 整型(interger data)

  • TINYINT
  • SMALLINT
  • MEDIUMINT
  • INT
  • BIGINT

表1:

Type存储(Bytes)Min Value
(Signed/Unsigned)
Max Value
(Signed/Unsigned)
TINYINT1-128127
0255
SMALLINT2-3276832767
065535
MEDIUMINT3-83886088388607
016777215
INT4-21474836482147483647
04294967295
BIGINT8-92233720368547758089223372036854775807
018446744073709551615

2 固定宽度(a fixed-point)

  • DECIMAL
  • NUMERIC

      DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
      M:代表保存数据的长度,最大为65;默认为10
      D:代表小数点部分的位数,最大为30
      存储为二进制存储,每9个数字需要4个字节;举例decimal(12,2),整数部分:4+[(12-2)-9]/2=5,小数部分:2/2=1,共计6字节。
    

如图1: Alt text

3 BIT型

	BIT[(M)]
	M:代表存储长度,1~64bits
	存储是二进制位,存储换算:INT((n+7)/8),比如bit(1),为1个字节。

具体操作请看 如图2: Alt text

4 浮点型(floating-point)

  • FLOAT:单精度浮点型

      FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]
      M:代表保存数据的长度,0~23bytes
      D:代表小数点部分的位数,
      存储为4个字节,如果长度>24,自动转换为DOUBLE。
    
  • DOUBLE:双精度浮点型

      DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]
      M:代表保存数据的长度,24~53bytes
      D:代表小数点部分的位数,
      存储为8个字节,
      real类型是同义词。
    

具体操作请看 如图3: Alt text

5 数据类型属性

  • NOT NULL:不允许为空
  • NULL:允许为空
  • DEFAULT:默认值
  • AUTO_INCREMENT:自增长类型,只有整型为自增长类型
  • UNSIGNED:无符号
  • ZEROFILL:填充零

具体操作请看 如图4: Alt text



blog comments powered by Disqus