db2强制转换问题

db2强制转换问题,db2,casting,Db2,Casting,[SQL]2010/12/07 20:18:32:184:0.0010[update REG_COMP_DEF set OrderNo=Cast(Cast(SUBSTR(OrderNo,1,10)为数字(10,0))+10为varchar(10))| NVL(SUBSTR(OrderNo,10+1,长度(OrderNo)-10),“”),其中长度(OrderNo)>10,OrderNo>='3000050',订单号类似于'300060%'和订单号不类似于'99999%] SqlException

[SQL]2010/12/07 20:18:32:184:0.0010[
update REG_COMP_DEF set OrderNo=Cast(Cast(SUBSTR(OrderNo,1,10)为数字(10,0))+10为varchar(10))| NVL(SUBSTR(OrderNo,10+1,长度(OrderNo)-10),“”),其中长度(OrderNo)>10,OrderNo>='3000050',订单号类似于'300060%'和订单号不类似于'99999%
] SqlException:db2sql错误:SQLCODE:-461,SQLSTATE:42846,SQLERRMC:SYSIBM.DECIMAL;SYSIBM.VARCHAR


内部强制转换还可以

我可以在DB2fori系统上运行它(没有NVL();我的版本不支持)

当内部转换为十进制()而不是数字()时,您能看到外部转换是否会运行吗


ref:SQLState 42846=“不支持从源类型转换为目标类型。”

谢谢Duffy!我使用java进行计算,然后更新数据库。