oracle数据库中,我们会经常见到类似于number(8,2)的类型,这个类型代表什么,又与int类型有什么区别呢,今天跟大家一起分享一下。
number(precision,scale)中:
(1)precision(精度) 表示数字中的有效位,如果没有指定数字大小的话,oracle默认使用38作为精度.
(2)scale(刻度) ,如果sacle大于0,表示数字精确到小数点右边的位数;scale默认设置为0;如果scale小于零,oracle将把该数字取舍到小数点左边的指定位数。
precision表示有效位数,有效数位:从左边第一个不为0的数算起,小数点和负号不计入有效位数;scale表示精确到多少位,指精确到小数点左边或右边多少位(+-决定)。number整数部分允许的长度为(percision-scale),无论scale是正数还是负数
(1)当一个数的整数部分的长度 > p-s 时,oracle就会报错
(2)当一个数的小数部分的长度 > s 时,oracle就会舍入。
(3)当s(scale)为负数时,oracle就对小数点左边的s个数字进行舍入。
(4)当s > p 时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则oracle报错,小数点后s位向右的数字被舍入
与int的区别
(1) oracle本来就没有int类型,为了与别的数据库兼容,新增了int类型作为number类型的子集。
(2)int类型只能存储整数;number可以存储浮点数,也可以存储整数;number(8,1)存储小数位为1位,总长度为8的浮点数,如果小数位数不足,则用0补全
(3)number(8)存储总长度为8的整数;
(4)int相当于number(22),存储总长度为22的整数。
oracle 自增 不同于mysql可以直接设置自增,需要建立序列,和触发器。
微软狠心:关闭WP8.1手机升级Win10官方渠道,Lumia930等产品无缘新Win10
新型蓝牙传感器,能让你及时知道宝宝尿布干湿情况的传感器
SWE.4的软件单元验证实践
Mini LED可能来的更快!是脆弱的泡沫还是真有实力?
NVIDIA DRIVE AP2X可实现安全且舒适的驾驶体验
分享一下Oracle数据库中的Number(p,s)数据类型
上海贝岭助力三峡700MW巨型水轮机成功投运
linux系统哪个好用
电动汽车:“Luftstrom”项目如何致力于提高电动汽车充电电池的效率?
安科瑞AAFD-DU多回路故障电弧探测器 485通讯/4G通讯可连主机
常用的非比较排序算法:计数排序,基数排序,桶排序的详细资料概述
武汉芯源半导体CW32F030系列MCU在电焊机的应用
ARM ATF入门-安全固件软件介绍和代码运行
德国汽车制造商戴姆勒和宝马正式宣布,双方将深化此前的合作
中国将稳居世界第二大半导体设备市场
应该如何学习C语言?给学习C语言的同学几点建议
荣耀v9评测:荣耀v9和华为P10谁更性价比?荣耀v9和华为P10评测对比
汽车电池与电动车的电池可以互换使用吗
传统制造业向智能制造变革的方向
480W有源PFC AC/DC导轨电源 ——LIFxx-10BxxR2系列