我正在努力解决一个问题,即我有一个文本框,可以接受任何类型的数据,但我想将数据转换为 decimal(12,9)
,或者任何数据类型都可以接受这个以数字为例 42.56926437219384
这是用户可以输入任何类型的数据(如字符或整数
)的问题第一种情况我想处理如果数据输入为整数:
DECLARE @num DECIMAL(12,9) = 444444444444444
SELECT CONVERT(DECIMAL(12,9),@num)
我认为如果是字符将在解决方案中处理它并为文本框分配验证。
我该如何处理整数部分?
答案 0 :(得分:4)
当您将其指定为DECIMAL(12,9)时,这意味着您的号码最多可以包含12位数字(不包括。),其中9位数字将位于小数部分之后。这意味着您可以存储的最大值是 999.999999999 。
在上面的示例场景中,该数字有15个整数部分,这些部分太高于变量的范围,因为您可以执行以下任一操作