我正在使用VB.NET 2010 Premium和SQL Server 2008 Express。
我有一个整数,1562,我乘以0.1。
在我的SQL数据库中,我有一个名为Y_751_207的字段,为Decimal(18,0)。
在我的程序中,我有一个名为txtY_751_207
的文本框。
objDataRow.item("Y_751_207") = CType(txtY_751_207.text, Double) * 0.1
当我逐步完成代码时,我确认我的结果还可以。 156.2,但当我在ListView中显示我的答案时,它显示为156.我需要将其显示为156.2。
Simulary
我有一个整数,39993824,我乘以10 ^ -6。
在我的SQL数据库中,我有一个名为Y_751_594
的字段,为十进制(18,0)。
在我的程序中,我有一个名为txtY_751_594
的文本框。
objDataRow.item("Y_751_594") = CType(txtY_751_594.text, Double) * 10 ^ -6.
当我逐步完成代码时,我确认我的结果还可以。 39.993824,但是当我在ListView中显示我的答案时,它显示为40.我需要它显示为39.993824。
在纸面上,我已经验证了我的结果是正确的。我试图把它做对,但我没有运气。
答案 0 :(得分:2)
问题是列的数据类型:十进制(18,0)
18表示“总数位数”。
0表示“小数点右边有多少位数”
由于您的比例为0,因此您的值将四舍五入为最接近的整数。您应该决定列所需的精度和比例,并进行适当的设置。