将varchar转换为具有德语格式的float时出错

时间:2015-09-23 08:11:40

标签: sql-server ssis sql-server-2008-r2 number-formatting type-conversion

使用德语数字格式我将带有amount列的CSV上传到我的SQL Server数据库中作为SSIS包的一部分。

SSIS Data Flow

此程序包是通过SQL Server导入和导出向导创建的。 {1}}列已在SQL Server中分配amount

Sanple数据如下所示:

datatype (varchar (50), null)

对于后续操作,我想将其转换为数据类型float:

Declare @amount varchar(50)
Set @amount = '1245,89'
Select @amount

这给了我一个错误:

  

Msg 8114,Level 16,State 5,Line 5转换数据类型varchar时出错   漂浮。

将小数点分隔符从“select convert(float,@amount) ”更改为“,”有效:

.

这就是我想要的,但我想知道是否可以直接在导入/导出向导中实现这一点,或者至少不用'Declare @amount varchar(50) Set @amount = '1245.89' Select @amount select convert(float,@amount) + 3 '替换','。除了这个之外,有什么设置我必须改为德语吗?:

Regional/Language settings

0 个答案:

没有答案