将数据类型nvarchar转换为float时出错(ORacle到SQL server 2008)

将数据类型nvarchar转换为float时出错(ORacle到SQL server 2008),sql,sql-server,oracle,sql-server-2008,sql-server-2008-r2,Sql,Sql Server,Oracle,Sql Server 2008,Sql Server 2008 R2,首先,我的服务器上有一个MS SQL server 2008标准版,Oracle和SQL server 2008之间有一个链接服务器。我尝试将数据从Oracle server传送到SQL server,但遇到如下问题: 当我尝试将一列nvarchar转换为Float时,会出现如下错误: 将数据类型nvarchar转换为浮点时出错 但是,当我尝试使用SQLServer2008R2进行相同的工作时,它不会给出任何错误,并且工作正常 我知道它是由十进制符号(和,)引起的,但是否有任何方法可以修复这种情

首先,我的服务器上有一个MS SQL server 2008标准版,Oracle和SQL server 2008之间有一个链接服务器。我尝试将数据从Oracle server传送到SQL server,但遇到如下问题:

当我尝试将一列
nvarchar
转换为
Float
时,会出现如下错误:

将数据类型nvarchar转换为浮点时出错

但是,当我尝试使用SQLServer2008R2进行相同的工作时,它不会给出任何错误,并且工作正常


我知道它是由十进制符号(
)引起的,但是否有任何方法可以修复这种情况,并将其提供给SQL server 2008标准版?您需要显示正在转换的数据/值-您是否有任何方法?如果您知道是“
”引起问题,然后在转换之前使用
replace
函数将其替换为“
”。感谢您的回复,@Kaf是的,您是对的,它解决了问题,但我怀疑“replace”函数会导致性能问题“suspect”是一个狡猾的术语。您的意思是,您的性能配置文件表明,带有REPLACE()函数的selects语句的运行速度明显慢于没有它们的语句吗?还是这只是毫无根据的猜测?无论哪种方式,这都是将数字数据存储为字符串所必须付出的代价。