(1)整数

  • 例如:TINYINT UNSIGNED
    | 数据类型 | 字节 | 储存范围 | | —- | —- | —- | | TINYINT | 1 | 有符号值:-2^7到2^7-1(127)
    无符号值:0到2^8-1(255) | | SMALLINT | 2 | 有符号值:-2^15到2^15-1(32767)
    无符号值:0到2^16-1(65535) | | MEDIUINT | 3 | 有符号值:-2^23到2^23-1
    无符号值:0到2^24-1 | | INT | 4 | 有符号值:-2^31到2^31-1
    无符号值:0到2^32-1 | | BIGINT | 8 | 有符号值:-2^63到2^63-1
    无符号值:0到2^64-1 | | UNSIGNED | 无符号 | 添加在上述类型之后就行 | | SIGNED | 有符号 | 添加在上述类型之后就行 |

(2)浮点型

  • M表示数字总位数,D表示小数点后面的有几位数字,M必须大于D
  • FLOAT(4,2)则最大能储存99.99
数据类型 储存范围
FLOAT[(M,D)] 有符号:-3.402823466E+38 到-1.175494351E-38
无符号:1.175494351E-38 到 3.402823466E+38
DOUBLE[(M,D)] 有符号:-1.7976931348623157E+308 到-2.2250738585072014E-308
无符号:2.2250738585072014E-308 到 1.7976931348623157E+308

**

(3)日期时间型

数据类型 储存需求
YEAR 1
TIME 3
DATE yyyy-MM-dd
DATETIME yyyy-MM-dd HH:mm:ss
TIMESTAMP yyyy-MM-dd HH:mm:ss 默认当前时间

**

(4)字符类型

  • CHAR(M):定长类型
  • VARCAHR(M):变长类型
数据类型 储存需求
CAHR(M) M个字节,0<=M<=255
VARCAHR(M) L+1个字节,其中L<=M,0<=M<=255
TINYTEXT L+1个字节,其中L<=2^8
TEXT L+1个字节,其中L<=2^16
MEDIUMTEXT L+2个字节,其中L<=2^24
LONGTEXT L+3个字节,其中L<=2^32
ENUM(‘value1’,’value2’,…) 1或2个字节,取决于枚举值的个数(最多65535个值)
SET(‘value1’,’value2’,…) 1、2、3、4、8个字节,取决于set成员的个数(最多64个成员)