我正在尝试将数据更新到数据类型为decimal(18,18)的列中。
正在抛出错误
Arithmetic overflow error converting varchar to data type numeric.
我的查询是
UPDATE tblname SET latitude ='55.27898669242859', longitude = '25.19762644777814' WHERE id = 1
当我删除引号(')并运行时我得到以下错误
Arithmetic overflow error converting numeric to data type numeric.
我使用过CAST和CONVERT也没用。
任何人都可以猜出原因吗?
答案 0 :(得分:3)
在定义表时你犯了错误。将列重新定义为十进制(18,10)表示您可以在十进制后存储10位数。通过定义十进制(18,18),您可以在表中存储小于1的十进制值,例如。 0.278986692。