如何使用SSIS读取文本文件内容并将其写入varchar(max)列?
我正在使用SSIS来读取一些文件(不是平面文件,或者我只是使用平面文件源)。结构类似于X12。 脚本源组件用于读取文件,根据格式提取记录并将它们传递给转换脚本组件,然后传递到oledb目标
在使用以下代码的源脚本组件中导致我认为编码问题和写入db的无法理解的数据
private MemoryStream GenerateStreamFromString(string s)
{
MemoryStream stream = new MemoryStream();
StreamWriter writer = new StreamWriter(stream);
writer.Write(s);
writer.Flush();
stream.Position = 0;
return stream;
}
using (MemoryStream s = GenerateStreamFromString(stringfromfile))
{
Output0Buffer.Value.AddBlobData(s.ToArray());
}
当我将db varchar(max)列中的数据读入DT_TEXT SSIS类型,将其传递给脚本转换然后将其写回同一列时,此方法有效;当我从文件中读取并将字符串转换为字节数组时,它会中断