我想更新一个初始值为0的表格数值,我在使用DB2。但是,当我执行SQL时,出现以下错误:
DSNT408I SQLCODE = -406, ERROR: A CALCULATED OR DERIVED NUMERIC VALUE IS NOT
WITHIN THE RANGE OF ITS OBJECT COLUMN
DSNT418I SQLSTATE = 22003 SQLSTATE RETURN CODE
我知道这个错误的含义,但是不清楚为什么会出现这个错误。以下是我的SQL代码:
UPDATE INTTABLE
SET PAYMENT = DECIMAL((MONTHIRATE*OMA)/(1-POWER(1+MONTHIRATE,-420)),8,2);
如果PAYMENT被定义为DECIMAL(8,2)
,为什么上述UPDATE语句不能正常工作?