mysql 列类型

Mysql支持多种列类型,包括数值类型、日期时间类型、字符串类型等等

 

一、数值类型

1、BIT[(M)]

位字段类型,M表示该字段的位数,范围是1-64.如果M被省略,则默认为1

 

2、TINYINT [UNSIGNED] [ZEROFILL]

很小的整数,大小为1字节,有符号数的范围是-128-127,无符号数的范围是0-255

 

2、SMALLINT [UNSIGNED] [ZEROFILL]

小的整数,大小为2字节,有符号数的范围是-23768-32767,无符号数的范围是0-65535

 

3、MEDIUMINT [UNSIGNED] [ZEROFILL]

中等大小的整数,大小为3字节,有符号的范围是-83886088388607,无符号的范围是016777215

 

4、INT [UNSIGNED] [ZEROFILL]

普通大小的整数,大小为4字节,有符号的范围是-21474836482147483647,无符号的范围是04294967295

 

5、BIGINT [UNSIGNED] [ZEROFILL]

大整数,大小为8字节,有符号的范围是-92233720368547758089223372036854775807,无符号的范围是018446744073709551615

6、FLOAT [(M, D)] [UNSIGNED] [ZEROFILL]

单精度浮点数,允许的值是-3.402823466E+38-1.175494351E-3801.175494351E-383.402823466E+38

M是小数总位数,D是小数点后面的位数。如果MD被省略,根据硬件允许的限制来保存值。单精度浮点数精确到大约7位小数位。

7、DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]

双精度浮点数。允许的值是-1.7976931348623157E+308-2.2250738585072014E-30802.2250738585072014E-3081.7976931348623157E+308

M是小数总位数,D是小数点后面的位数。如果MD被省略,根据硬件允许的限制来保存值。双精度浮点数精确到大约15位小数位。

 

注:

1、INTEGER是INT的同义词

2、REAL是FLOAT的同义词

 

二、日期和时间类型

1、DATE

日期。支持的范围为'1000-01-01''9999-12-31'MySQL'YYYY-MM-DD'格式显示DATE值,但允许使用字符串或数字为DATE列分配值。

 

2、DATETIME

日期和时间的组合。支持的范围是'1000-01-01 00:00:00''9999-12-31 23:59:59'MySQL'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,但允许使用字符串或数字为DATETIME列分配值。

 

3、TIMESTAMP[(M)]

时间戳。范围是'1970-01-01 00:00:00'2037年。TIMESTAMP列用于INSERTUPDATE操作时记录日期和时间。如果你不分配一个值,表中的第一个TIMESTAMP列自动设置为最近操作的日期和时间。也可以通过分配一个NULL值,将TIMESTAMP列设置为当前的日期和时间。

 

4、TIME

时间。范围是'-838:59:59''838:59:59'MySQL'HH:MM:SS'格式显示TIME值,但允许使用字符串或数字为TIME列分配值。

 

5、YEAR[(2|4)]

两位或四位格式的年。默认是四位格式。在四位格式中,允许的值是190121550000。在两位格式中,允许的值是7069,表示从1970年到2069年。MySQLYYYY格式显示YEAR值,但允许使用字符串或数字为YEAR列分配值。

 

三、字符串类型

1、CHAR(M)

固定长度的字符串,M为字符串长度,范围0-255

 

2、VARCHAR(M)

可变长度字符串,M为字符串长度,范围0-65535

 

你可能感兴趣的:(mysql 列类型)