【发布时间】:2015-05-11 07:18:16
【问题描述】:
我正在更改视图以将地理坐标(具有不同十进制精度的数字)转换为十进制字段。
我已确认源表中的唯一项目是数字和小数 - 但我收到了错误
“将数据类型 varchar 转换为数值时出错。”
源表中的小数是否可能被读取为字符,如果是,我该怎么做才能成功执行此转换?
ALTER VIEW [SCHEMA].[VIEW_V]
AS SELECT
cast(field 1 AS decimal (26,19)) as x_coord
FROM [linkedServer].[Sourcedatabase].[schema].[dt_table]
【问题讨论】:
-
你可能认为所有的值都是数字,但 SQL Server 更清楚。您可能会遇到各种问题,很可能是字段中的非数字字符。您可能在两台机器上有不同的国际化设置,因此逗号或句点会被拒绝。我认为这是一个数据问题,而不是 SQL 问题。
标签: sql casting type-conversion ssms-2012