原题:为什么我会在ADO.NET中将数值转换为数据类型数值的算术溢出错误?
为什么我得到一个算术溢出错误使用货币数据类型时,金额低于$ 999,999,99更大的数值转换为数据类型数字在ADO.NET代码?
正如问题说......我有一个会谈到SQL Server 2008数据库中的数据访问层位的ADO.net代码。表格中有一个数据类型为“Money”的金额列。用的量< $ 1,000,000插入记录时的代码工作正常,但当用量为> = $ 1,000,000引发此错误:
“算术溢出错误转换数字数据类型数值”
我可以手动运行T-SQL针对数据库将金额更新为大于$ 1,000,000的值,因此数据库可以除罚款金额外......下面的SqlCommand会导致错误触发的是什么?
MyCommand.Parameters.Add(New SqlParameter("@Amount", SqlDbType.Money))
If IsNothing(Amount) Then
MyCommand.Parameters("@Amount").Value = Convert.DBNull
Else
MyCommand.Parameters("@Amount").Value = Amount
End If
这是一个非常长的标题..... – 2009-12-16 16:20:56
什么数据类型是金额变量? – 2009-12-16 16:28:29
Amount变量的类型= Decimal – codethrift 2009-12-16 16:32:08