如何在sql中修复小数点前后的十进制数字?

时间:2014-02-03 09:32:49

标签: sql tsql types decimal

我有一个decimal(26,16)类型的变量,我希望在小数点前保存一个12位数的值,然后保存14位数,但它会引发“将数值转换为数据类型数字的算术溢出错误”。当我定义这种类型的变量时,它究竟意味着什么?这意味着它只能存储前10位数和小数点后16位数或其他值的数值?

2 个答案:

答案 0 :(得分:1)

十进制数中最高的数字(26,16)是9999999999.9999999999999999。

因此,当您尝试存储12位数时,它将溢出

尝试小数(28,16)而不是

答案 1 :(得分:0)

小数点左侧和右侧可存储的最大小数位数。精度必须是从1到最大精度为38的值。默认精度为18。

precision表示可以使用的最大位数。

scale表示十进制(。)

后可以使用的最大位数

参考这个...... http://msdn.microsoft.com/en-us/library/ms187746.aspx