将BlobColumn转换为SSIS脚本组件中的字符串

时间:2010-01-05 01:44:05

标签: sql ssis

如何在BlobColumn中将String转换为SSIS Script Component

E.G:

Source Column : OrganisationProviderID NVARCHAR(MAX)

Destination Column : OrganisationProviderID VARCHAR(20)

如何在SSIS Script Component中实现这一目标?

2 个答案:

答案 0 :(得分:29)

这是我用来将BlobColumn转换为SSIS脚本组件中的字符串的函数

string BlobColumnToString(BlobColumn blobColumn)
{
    if (blobColumn.IsNull)
        return string.Empty;

    var blobLength = Convert.ToInt32(blobColumn.Length);
    var blobData = blobColumn.GetBlobData(0, blobLength);
    var stringData = System.Text.Encoding.Unicode.GetString(blobData);

    return stringData;
}

答案 1 :(得分:0)

为什么要使用脚本组件?另外,我不确定NVARCHAR(MAX)是否真的有资格作为BLOB列。

如果要将其作为数据流任务的一部分,在数据源上,将数据访问模式设置为“SQL Command”,则使用以下命令文本:

select left(OrganisationProviderID,20) as OrganisationProviderID
from src

然后将其链接到目标组件。