-2
我试图将一个数字转换为DECIMAL(10,2)。 如果我理解的很好,像“1234567890”这样的数字应该是有效的 DECIMAL(10,2)。 但是当我尝试投它,它会返回一个错误-413:DB2将转换为DECIMAL
“溢出或下溢OCCURRED过程中的数字数据类型转换”
这是SQL:
select CAST(1234567890 AS DECIMAL(10,2)) from SYSIBM.SYSDUMMY1;
依我之见它的问题是它增加了两个零小数位, 因此总长度是12,这对于一个(10,2)是无效的数字。事实上,如果我尝试将它投射到(12,2),它就会起作用(显示“1234567890.00”)。
我不知道这是错误还是我做错了什么。 铸件(12,2)似乎并没有一个有效的选择,因为它会 接受像“1234567890.12”这不应该是有效的(10,2)的数字。
在此先感谢。
谢谢你,我从XML totalDigits和参数fractionDigits的概念混合起来。我认为它以同样的方式工作,但它似乎没有 – Elrohir