【Oracle】Oracle中字段定义为number(12,2)是什么意思
number(12,2)这个字段定义表达式中:
12代表此字段一共有12个有效数位,其中有2个是小数数位,于是能用于整数的数位是12-2=10个。
因此,12-2=10表明这个字段最多能容纳10位的整数,多1位都不行;2表明这个字段最多只能容纳2位的小数,多了就会截去(四舍五入方式),少了没问题。
下面是实验过程,用以验证上面做出的论断:
【建表】
SQL> create table test01( 2 v number(12,2) ); 表已创建。
【插值及查询】
SQL> insert into test01(v) values('1.1'); 已创建 1 行。 SQL> insert into test01(v) values('1.12'); 已创建 1 行。 SQL> insert into test01(v) values('1.123'); 已创建 1 行。 SQL> insert into test01(v) values('123456789012'); insert into test01(v) values('123456789012') * 第 1 行出现错误: ORA-01438: 值大于为此列指定的允许精度 SQL> insert into test01(v) values('1234567890'); 已创建 1 行。 SQL> select * from test01; V ---------- 1.1 1.12 1.12 1234567890 SQL> insert into test01(v) values('12345678901'); insert into test01(v) values('12345678901') * 第 1 行出现错误: ORA-01438: 值大于为此列指定的允许精度 SQL>
SQL> insert into test01(v) values('1.235'); 已创建 1 行。 SQL> insert into test01(v) values('1.246'); 已创建 1 行。 SQL> select * from test01; V ---------- 1.1 1.12 1.12 1234567890 1.24 1.25 已选择6行。
END
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2020-02-12 使用Flashback救回被误drop掉的表
2020-02-12 【Canvas与艺术】环形回环边纹
2020-02-12 【高中数学/指数、对数、正弦函数】已知函数f(x)=2^x+x,g(x)=log2_x+x,h(x)=2*sinX+x 的零点分别是a,b,c,则a、b、c的大小顺序是?
2020-02-12 【高中数学/函数/零点】已知函数f(x)=lnx-x-a有两个不同的零点,求实数a的取值范围?
2020-02-12 【高中数学】比较两躺平点的大小关系