SSIS - 从DT_STR到int的数据转换

问题描述 投票:2回答:2

如何在SSIS数据流任务中应用以下转换

cast(gift_amount as int)/100

在派生列转换编辑器中,我无法更改数据类型。它给出0xC0049064函数时给出typecast错误。

sql-server ssis etl ssis-2012 bids
2个回答
2
投票

你可以使用qazxsw poi实现这一点

  1. 添加一个script component
  2. Script Component标记为输入列
  3. 添加Decimal或float类型的输出列(ex gift_amount
  4. 添加以下代码:(使用vb.net) outColumn

2
投票

你应该试试

If Not Row.giftamount_IsNull AndAlso
   Not String.IsNullOrEmpty(Row.giftamount) Then

    Row.outColumn = CDec(CInt(Row.giftamount) / 100)

Else

    Row.outColumn_IsNull = True

End If

此外,在Derived Column Editor窗口中,您可以添加其他类型的强制转换 - 查看编辑器右上角的一些选项。

((DT_I4)gift_amount)/100

© www.soinside.com 2019 - 2024. All rights reserved.