mysql数据库的字段类型

1.数字类型

1.整数类型

数据类型字节数无符号数的取值范围有符号数的取值范围
TINYINT10~255-128~127
SMALLINT20~65635-32768~32767
MEDIUMINT30~16777215-8388608~8388607
INT40~4294967295-2147483648~2148483647
BIGINT80~18446744073709551615-9223372036854775808~9223372036854775807
!!注意

无符号类型不可以插入负数

数据类型右边使用小括号数字标注了显示宽度,显示宽度是取值范围所能表示的最大宽度,显示宽度与取值范围无关.

零填充问题:为字段设置零填充,关键字为ZEROFILL,当数值宽度小于显示宽度时,会在左侧填充0.

对于数据类型的设置问题:将来可能参与数学运算的推荐使用整数 浮点数 定点数类型,只用来显示推荐使用字符串类型.

表的主键推荐使用整数类型.

当字段类型与数据类型不一致时,会尽可能的转为字段设置的类型.

2.浮点数类型

类型分别为:float(单精度类型)和double(双精度类型)

数据类型字节数精度
float46位或7位
double8约5位
!!!注意

对于精度的限制,例如float限制为6位时,当插入数据时7第七位就会被四舍五入,7位以上就会被抛弃.

3.定点数类型

字段设置关键字: DECIMAL(M,D)

M表示总位数,D表示小数点后的位数.

插入的数据小数部分不可以超出范围,如出现四舍五入导致出现精度问题.

整数范围也不可以超出范围,包括因为小数部分因为四舍五入问题导致出现的整数部分超出范围.

4.BIT类型

BIT(M) M表示位数,范围为1~64

可能使用的一些函数:

ASCII():会将字符转换为十进制的数字.

BIN():将十进制数字转换为二进制保存.

LENGTH():计算二进制的位数,例如十进制65,转换为二进制1000001,使用length()会显示为7

注意:

二进制:在二进制字符串前加前缀b,例如b'1000001',然后再通过select b'1000001',可以将二进制转为ASCLL字符后的结果,为字符 'A'.

十六进制:使用x'41'或'0x41',十进制转十六进制的函数为:HEX().

字符串:单引号和双引号,还用'\' 转义字符.

2.时间和日期类型

1.数据类型

数据类型取值范围日期格式零值
YEAR1901~2155YYYY0000
DATE1000-01-01~9999-12-3YYYY-MM--DD0000-00-00
TIME-838:59:59~838:59:59HH:MM:SS00:00:00
DATETIME1000-01-01 00:00:00~9999-12-3 23:59:59YYYY-MM--DD HH:MM:SS0000-00-00 00:00:00
TIMESTAMP1970-01-01 00:00:00~2038-01-19 03:14:07YYYY-MM--DD HH:MM:SS0000-00-00 00:00:00

2.YEAR类型

1 插入数据时,可以使用字符串数字

2 字符串:'00'~'99' , '00'~'69'的值会转换为2000~2069 年,'79'~'99' 会被转化为1970~1999

3 数字:和字符串相同,不过是'00'换为'1',2000换为2001.

3.DATE类型

1 获得当前系统日期:CURRENT_DATENOW()

2 YY-MM-DD和YYMMDD结果相同,都是日期YY-MM-DD

4.TIME类型

显示形式:HH:MM:SS

和YY-MM-DD和YYMMDD结果相同,都是日期YY-MM-DD,显示方式类似.

5.DATETIME类型

如上图表格

6.TIMESTAMP类型

时间戳

无任何输入或者输入为空时保存的是系统当前日期和时间.

3.字符串类型

数据类型类型简介
CHAR固定长度字符串
VARCHAR可变长度字符串
TEXT大文本数据
ENUM枚举类型
SET字符串对象
BINARY固定长度的二进制数据
VARBINARY可变长度的二进制数据
BLOB二进制大对象
1.CHAR和VARCHAR

char(M)varchar(M),M表示字符串的最大长度.

2.TEXT类型

用来保存大数据文本

TINYTEXTMEDIUMTEXT
TEXTLONGTEXT
3.ENUM类型

又称枚举类型

格式:enum("值1","值2",...)

设置枚举类型的字段,数据只能在值列表中选择,而且只能选择一个

4.SET类型

用于保存字符串对象

格式:SET("值1","值2",...)

设置set类型的字段,也要在值列表中选择,可以选择多个,用','来分隔.

5.BINARY和VARBINSRY类型

储存二进制数据

格式:BINARY(M)VARBINARY(M)

当数据的长度不足最大长度时,将在数据后面用"\0"补齐.

!!!BINARY和VARBINARY区分大小写

6.BLOB类型

储存数据量很大的二进制数据,例如图片 PDF数据

TINYBLOBMEDIUMBLOB
BLOBLONGBLOB
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值