MySQL学习笔记(六)—— MySQL的数据类型(数值型)
时间:2008-06-05 来源:lavostar
MySQL支持所有ANSI SQL2数值类型,分为三大类:整型、小数型和浮点型,每类又按其存储大小再细分。数值类型可以指定显示大小,这影响着MySQL显示的结果,但与内部存储大小无关。对于小数型和浮点型,还可以指定小数点后的位数(0到30之间,且至少应小于整个数的位数减2,如果不是这样,MySQL会自动转换,如FLOAT(6,5)改为FLOAT(7,5))。如果值的存储大小大于数据类型所要求的最大值,它会自动截断,MySQL同时会给出一条警告信息。AUTO_INCREMENT属性可用于整型数据,UNSIGNED属性可用于所有数值类型,ZEROFILL属性表示对该字段数据填充0,其0的个数取决于该字段的显示宽度。具体数值型如下:
1) BIGINT
BIGINT[(display_size)] [AUTO_INCREMENT] [UNSIGNED] [ZEROFILL]
存储大小:8字节
描述:最大整数类型(-9223372036854775808到9223372036854775807,无符号为0到18446744073709551615)。
2) BIT
BIT[(bits)]
存储大小:bits位数+7或8位
描述:存储指定位数的位图值。
3) DEC
与DECIMAL同义。
4) DECIMAL
DECIMAL[(precision, [scale])] [UNSIGNED] [ZEROFILL]
存储大小:不确定
描述:存储精度重要的浮点数,如货币值等。需要指定精度和刻度(小数点后位数),MySQL的默认精度为10,默认刻度为0。
5) DOUBLE
DOUBLE[(display_size, digits)] [ZEROFILL]
存储大小:8字节
描述:双精度浮点数(负数范围-1.7976931348623157E+308到-2.2250738585072014E-308,0,正数范围2.2250738585072014E-308到1.7976931348623157E+308)。
6) DOUBLE PRECISION
与DOUBLE同义。
7) FLOAT
FlOAT[(display_size, digits)] [ZEROFILL]
存储大小:4字节
描述:单精度浮点数(负数范围-3.402823466E+38到-1.175494351E-38,0,正数范围1.175494351E-38到3.402823466E+38)。
8) INT
INT[(display_size)] [AUTO_INCREMENT] [UNSIGNED] [ZEROFILL]
存储大小:4字节
描述:基本整数(-2147483648到2147483647,无符号为0到4294967295)。
9) INTEGER
与INT同义。
10) MEDIUMINT
MEDIUMINT[(display_size)] [AUTO_INCREMENT] [UNSIGNED] [ZEROFILL]
存储大小:3字节
描述:基本整数(-8388608到8388607,无符号为0到16777215)。
11) NUMERIC
与DECIMAL同义。
12) REAL
与DOUBLE同义。
13) SMALLINT
SMALLINT[(display_size)] [AUTO_INCREMENT] [UNSIGNED] [ZEROFILL]
存储大小:2字节
描述:基本整数(-32768到32767,无符号为0到65535)。
14) TINYINT
TINYINT[(display_size)] [AUTO_INCREMENT] [UNSIGNED] [ZEROFILL]
存储大小:1字节
描述:基本整数(-128到127,无符号为0到255)。
相关阅读 更多 +