0

状況:フラットファイルソースのタブ区切り行に、行の最後に列がありません。Flat File Connection Managerでは、行はで区切られ{CR}{LF}、最後の列もで区切られ{CR}{LF}ます。他のすべての列は。で区切られTab {t}ます。SSISは行をインポートしています。

例:

Column_1 {t} Column_2 {t} Column_3 {t} Column_4{CR}{LF}

123123123123 {t} _ {t} _ {t} _{CR}{LF}

123 {t} 123{CR}{LF}

123123123 { 123 {t} _{t}{t}{CR}{LF}

123 {t} 123{t} {t} {CR}{LF}

123123123123 {t} _ {t} _ {t} _{CR}{LF}

問題: 残りの列のタブが区切られていない部分的な行(上記の行2を参照)は、次の行を現在の行の一部として扱いますが、空白のタブで区切られた列を含む行(上記の行4を参照)は扱いますいいえ。

必要な出力:部分的な行を通知するためにエラーが必要です。

ファイルの途中で部分的な行をチェックするための最良の方法は何ですか?

4

1 に答える 1

1

解析時に列が欠落している場合、pre-denali(2012)SSISは失敗するようです。これは、行区切り文字を常にチェックすることにより、2012年に修正されました。

参照: http: //blogs.msdn.com/b/mattm/archive/2011/07/17/flat-file-source-changes-in-denali.aspx

2012年以前のSSISでのこの問題の回避策には、独自のパーサーの作成(これが私たちが選択したことです)、解析前のデータの変換、または行を解析するためだけのフラットファイルソースの使用が含まれます。

于 2012-11-13T17:58:39.360 に答える