(1) Tinyint:单字节整形,系统采用一个字节来保存的整形:一个字节 = 8位,最大能表示的数值是0-255.mysql
(2) Smallint:双字节整形,系统采用两个字节来保存的整形:能表示0-65535之间sql
(3) Mediumint:三字节整形,采用三个字节来保存数据大数据
(4) Int:整形(标准整形),采用四个字节来保存数据spa
(5) Bigint:大整形,采用八个字节来保存数据。3d
① 建立数据表blog
② 插入合理数据ci
③ 插入错误数据(超出对应的数据范围)table
错误缘由:并非说tinyint没有这么大的空间,而是由于mysql默认的为整形增长负数。数据类型
实际表示的区间为-128,127语法
实际应用中,应该根据对应的数据的范围来选定对应的整形类型:一般使用的比较多的TINYINT和int。
无符号:表示存储的数据在当前字段中,没有负数(只有正数,区间为0-255)
基本语法: 在类型以后加上一个 unsigned |
范例:建立无符号整型数
显示长度:指数据(整型)在数据显示的时候,到底能够显示多长位。
Tinyint(3): 表示最长能够显示3位,unsigned说明只能是正数,0-255永远不会超过三个长度
Tinyint(4):表示最长能够显示4位,-128~127
显示长度只是表明了数据是否能够达到指定的长度,可是不会自动知足到指定长度:若是想要数据显示的时候,保持最高位(显示长度),那么还须要给字段增长一个zerofill属性才能够。
Zerofill:从左侧开始填充0(左侧不会改变数值大小),因此负数的时候就不能使用zerofill,一旦使用zerofill就至关于肯定该字段为unsigned
范例:使用zerofill建立数据
说明:
数据显示的时候,zerofill会在左侧填充0到指定位:若是不足3位,那么填充到3位,若是自己已经够了或者超出,那么就不在填充。
说明:
显示长度能够本身设定:超出长度(可是不超出范围)不会影响,只会对不够长度的进行补充(显示长度)
专门用来存储小数的;在Mysql中将小数类型又分为两类:浮点型和定点型
浮点型又称之为精度类型:是一种有可能丢失精度的数据类型,数据有可能不那么准确(由其是在超出范围的时候)
说明:浮点型之因此可以存储较大的数值(不精确),缘由就是利用存储数据的位来存储指数
整型:全部位都为1
1 |
1 |
1 |
1 |
1 |
1 |
1 |
计算结果:
浮点型:有部分用于存储数据,有部分用于存指数
1 |
1 |
1 |
1 |
1 |
1 |
1 |
前三位转换成十进制以后用做10的指数: 10^7 * 数据值
Float又称之为单精度类型:系统提供4个字节用来存储数据,可是能表示的数据范围比整型大的多,大概是10^38;只能保证大概7个左右的精度(若是数据在7位数之内,那么基本是准确的,可是若是超过7位数,那么就是不许确的)。
基本语法: Float:表示不指定小数位的浮点数 |
基本语法: Float(M,D):表示一共存储M个有效数字,其中小数部分占D位 |
基本语法: Float(10,2):整数部分为8位,小数部分为2位 |
① 建立一个数据表保存浮点数据
② 存入数据:合法数据
注意:若是数据精度丢失,那么浮点型是按照四舍五入的方式进行计算
③ 插入数据,超出大小
④ 数据长度恰好知足条件,可是会超出精度
说明:
用户不能插入数据直接超过指定的整数部分长度,可是若是是系统自动进位致使,系统能够承担。
⑤ 浮点数能够采用科学计数法来存储数据
浮点数的应用:一般是用来保存一些数量特别大,大到能够不用那么精确的数据。
Double又称之为双精度:系统用8个字节来存储数据,表示的范围更大,10^308次方,可是精度也只有15位左右。
定点数:可以保证数据精确的小数(小数部分可能不精确,超出长度会四舍五入),整数部分必定精确
Decimal定点数:系统自动根据存储的数据来分配存储空间,每大概9个数就会分配四个字节来进行存储,同时小数和整数部分是分开的。
基本语法: Decimal(M,D):M表示总长度,最大值不能超过65,D表明小数部分长度,最长不能超过30。 |
① 建立表:与浮点数对比
② 插入正常数据
③ 插入最大数据
④ 尝试定点数进行四舍五入
定点数的应用:若是涉及到钱的时候有可能使用定点数,涉及到精确度较高的状况下,推荐使用定点数。