mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)

概述:这几篇会详细讲讲解mysql中的字段类型,大体上包括:整数类型,小数类型,时间日期类型,字符串类型,set(集合)类型,包括详细介绍,使用场景以及一些常用扩展知识

整数类型

Tinyint

迷你整形,系统采用一个字节来保存的整形:一个字节 = 8位,最大能表示的数值是0-255

Smallint

小整形,系统采用两个字节来保存的整形:能表示0-65535之间

Mediumint

中整形,采用三个字节来保存数据。

Int

整形(标准整形),采用四个字节来保存数据。

Bigint

大整形,采用八个字节来保存数据。

1.创建数据表

mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)_第1张图片

2.插入合理数据来测试

mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)_第2张图片

3.插入错误数据(超出对应的数据范围)

mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)_第3张图片

错误原因:并不是说tinyint没有这么大的空间,而是因为mysql默认的为整形增加负数。

实际表示的区间为-128,127,

实际应用中,应该根据对应的数据的范围来选定对应的整形类型:通常使用的比较多的TINYINT和int。

我们想用tinyint存储255要怎么做呢?往下看

无符号标识设定

无符号:表示存储的数据在当前字段中,没有负数(只有正数,区间为0-255)

基本语法:在类型之后加上一个 unsigned,如下插入255执行成功

mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)_第4张图片

显示长度

显示长度:指数据(整型)在数据显示的时候,到底可以显示多长位。

Tinyint(3): 表示最长可以显示3位,unsigned说明只能是正数,0-255永远不会超过三个长度

Tinyint(4):表示最长可以显示4位,-128~127

显示长度只是代表了数据是否可以达到指定的长度,但是不会自动满足到指定长度:如果想要数据显示的时候,保持最高位(显示长度),那么还需要给字段增加一个zerofill属性才可以。

Zerofill:从左侧开始填充0(左侧不会改变数值大小),所以负数的时候就不能使用zerofill,一旦使用zerofill就相当于确定该字段为unsigned

mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)_第5张图片

数据显示的时候,zerofill会在左侧填充0到指定位:如果不足3位,那么填充到3位,如果本身已经够了或者超出,那么就不在填充。

你可能感兴趣的:(mysql轻松学)