编辑:我关闭此内容并再次发布更好的说明。
我将一些医疗诊断从平面文件加载到临时表中。每个诊断都有三个字段:Diagnosis_Code,Diagnosis_Date和Diagnosis_Type。该文件总共包含9个诊断,总共27个字段(Diagnosis01_Date,Diagnosis02_Date等)。登台表中的字段名称与文件中的字段名称匹配。
使用脚本组件,我需要对其中一些值执行函数,并希望在循环中执行它,而不是写相同的东西9次。如果我在VB中使用记录集,我会在Input0_ProcessInputRow子中写下这样的内容:
For i = 1 to 9
row.("Diagnosis0"+ i +"_Date").Value = diagnosisDate
next i
但是连续的列不是一个集合,我找不到按名称引用它们的方法。有没有办法循环遍历列并在SSIS脚本中修改它们?
编辑:我想要做的是,在我的脚本组件中,替换这一系列重复的任务:。
row.Diagnosis01 = diagnosisDate
row.Diagnosis02 = diagnosisDate
....
row.Diagnosis09 = diagnosisDate
循环。
答案 0 :(得分:1)
您可以使用String.Split
来实现此目标,一次读取一行文件:
string line = row; // 'row' will be a line of data from your file
string[] fields = line.Split('|');
for (int i = 0; i < fields.Length; i++)
{
// perform whatever logic you need to on fields[i]
}