gpt4 book ai didi

sql-server-2008 - 更新 SQL Server 中的十进制值字段

转载 作者:行者123 更新时间:2023-12-02 01:19:15 24 4
gpt4 key购买 nike

我想对我的数据库执行以下操作:

UPDATE Addresses

SET Latitude = 1000, Longitude = 1000
WHERE Latitude IS NULL AND Longitude IS NULL

1000 不是有效的纬度或经度。 LatitudeLongitude 是我的数据库中的新列,我不希望任何字段为空。我在应用程序中处理无效的纬度和经度值,但将它们设置为 null 会带来困难。

当我尝试运行此查询时,出现以下错误:

Msg 8115, Level 16, State 8, Line 3
Arithmetic overflow error converting int to data type numeric.
The statement has been terminated.

纬度和经度列的数据类型均为Decimal(18,15)。我假设我必须以特定的方式编写这些十进制条目,但我无法弄清楚它是什么。

有人可以启发我吗?

最佳答案

您超出了数据类型的指定参数。

DECIMAL(18,15) 表示总共有 18 位,其中 15 位位于小数点右边。这样就剩下小数点后 3 位,1000 是一个四位数

您需要将数据类型更改为 DECIMAL(18,14) 之类的内容,或者使用 999.999999999999999 之类的值。

关于sql-server-2008 - 更新 SQL Server 中的十进制值字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7175576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com