ORA-01438诊断
2014年3月26日
没有评论
ORA-014380, “value larger than specified precision allows for this column”这种报错很常见,大部时侯我们知道自己用的是什么语句,操作的是哪张表,但是哪个value引起的问题就很难判断了。
产生ora-01438的原因也不少,比如表上的trigger的级联DML操作引起的,bug的原因,但最主要的原因还是插入的列值过来引起的。
按习惯上讲,我们可以做一个1438的errorstack的trace,不过一般这个trace很大且用处也不大,因为只能从中看到哪个表、哪个列、哪条语句引起的问题,但是不清楚哪个值引起的问题。
如下以一个测试来粗略说明一个发现原因的方法。
1、准备测试条件:
1)表T1
SQL> desc t1
Name Null? Type
——————————- ——– ————
COL1 NUMBER(2)
阅读全文…
近期评论