首先float 和double类型;
float 占用8个位
double站16位,
首先举个例子,先看数据的范围
tinyint 1位 范围 28-1 是范围,大小从 -128——127 共 255个数字范围
(**这里是指数意思 )**
smallint 2位 范围是 2*16-1大小 -32768——32767 共65535个数字范围
mediuint 3位————————一次类推
int 4位————————————
bigint 8位————————————
这里的整型数字都是在有效数字范围内
float 是在内存里面是以指数的形式存在
例如-1.27E36就是说 首先负号 ,占一位,指数符号(正负占一位,)然后就是 尾数和 指数的位数了
float 指数的位数是 23
double 是52
指数和 尾数的尾数依据操作系统而变,不固定,一般情况是这样
float 和 double 的可以表示范围极大,但是呢,他们的有效位数不支持精确表示,
float 7位有效,double 16位有效,超过的就不准确了,
这里回头看int的范围,4个字节,32位,一个符号位,就是2的31次方个范围,再分割正负,所有的都是这样,
这里看decimal 类型的数据,
decimal(a,b) a 是精度就是所有数据的最大长度,b是小数位数,不设置b默认0位,这时所有精度指向整数部分,默认精度为18位,decimal 会随着精度的不同占用的内存空间不同,
这里指的是位,而不是字节,所以在存储小数的时候 指定decimal
会使数据运行的速度提高,并且节约内存空间,相比float 和double 都更为精确和好用,这里指的是数据库的占位,而visual basic 里面的decimal则占位 96 相比 float和double都大,正确指定数据的类型对于系统或者数据库都更加的友好。## 标题