标签:round time 指定 span mysq 数值类型 php date 占用
整数型 tinyint smallint mediumint int|integer bigint
注意:
1, 如何选择数据类型,我们的原则是:够用就行!尽量的选择占用内存小的整型,而且效率也更快!
2,可以使用unsigned来控制是否有符号位,如果不写,缺省值是有符号的
MySQL不会进行自动类型转换,如果超出了指定类型的范围,就直接报错!
3,可以指定数据显示的最小宽度,以达到统一显示的目的,通常的做法就是使用zerofill来进行填充
如果插入的数据,超出了指定的显示宽度,不影响原有的数据,该怎么显示就怎么显示:
4,其实,在MySQL中,也有bool型,但其实就是tinyint(1)的别名!
小数型 又可以分成浮点数和定点数!
浮点数 分成了单精度型和双精度型!其中单精度占4个字节,而双精度占8个字节!
单精度的有效位在6-7位之间,而双精度的有效位在16-17位之间!所以,我们在插入浮点数的时候也要注意,有时候没有超过浮点数的范围,但是超出了浮点数的精度!
注意: 1,浮点数还支持控制数字的范围,语法形式为:type(M,D)这里的type是指float或double!
M:表示是所有数值位的范围(包括整数和小数部分,不包括小数点)D:表示小数的位数的范围,小数超出的部分会四舍五入
2,同php一样,浮点数也支持科学计数法
定点数 采用定点数存储!关键字:decimal
定点数策略:每当出现连续的9位数的时候,用4个字节单独存储,而且整数部分和小数部分分开存储!
定点数优缺点: 优点:所有的数据都会被精确的存储,不会造成数据的丢失! 缺点:占用的空间较大
注意:1, decimal同样支持decimal(M,D)语法此时,M指的是总位数,D代表小数的位数,默认的情况下,M为10,D为0
2, decimal同样也支持zerofill语法由于货币值往往都是decimal型,所以decimal型也叫作货币型!
datetime 和 timestamp
datetime和timestamp的显示形式和插入形式基本上是一样的,只是存储形式和能表示的日期的范围不一样,在timestamp中存储是整型,但是其显示形式和插入形式和datetime一样都是年月日时分秒
注意: 插入数据的时候可以支持任意的格式,使用什么分隔符不重要,日期的范围和格式才重要!
另外,还可以使用mysql内部的一个函数now()来插入,意思就是当前的年月日时分秒
date 相当于datetime的一个“子集”,只有年与日没有时分秒!
time time型有两个含义:1, 一天中的时间(也就是datetime中的一个“子集”,只有时分秒)
2, 表示时间间隔,表示时间的间隔的时候,格式为,D HH:MM:SS也就是 天 时:分:秒
year 只表示年份,但是年份可以简写,比如现实中98年认为是1998年!范围比较小,只能是1901年到2155年,因为只占一个字节!
注意: 如果年份只写两位,大于等于70的就代表19XX年,小于等于69的代表20XX年!
标签:round time 指定 span mysq 数值类型 php date 占用
原文地址:http://www.cnblogs.com/czhd666/p/6098602.html