詳細な回答ですが、「SSISが質問で提供された日付形式を認識できない」かどうかについては違います。
おそらく、「SSISは、提供された日付形式を助けなしでは認識できない」と言い換えられた場合です。この場合の根本的な問題は、デフォルトで日付と数値の解析ルーチンがロケール認識 。一般的に、そうでない場合を除いて、これは良いことです。メインフレームから外れるccyymmddの形式の日付を扱っていたときに、私は最初にこれに遭遇しました。他の人が示したように、それはtsqlで解析されます、なぜSSISではないのですか?文字列データを有効な日時にするためにスライスとダイシングを行うことを提唱する記事はたくさんありますが、なぜそんな面倒なことをするのですか?
これをサンプル入力データとして指定します(タブ区切り)。
LongDateDesiresFastParse Gibberish
Oct 25 2011 10:18:10:756PM Hello world
Oct 24 2010 10:18:10:756PM Hello 2010 world
Oct 23 2009 10:18:10:756PM Hello 2009 world
Oct 22 2008 10:18:10:756PM Hello 2008 world
そして、このようなパッケージ
フラットファイルソース の1つの設定を変更する 、パッケージを失敗させるかどうかを決めることができます。
Flat File Sourceを右クリックし、「ShowAdvancedEditor」を選択します。 [入力と出力のプロパティ]タブで、[出力列]を展開し、日付を含む列を見つけます。 FastParse を変更します FalseからTrueへの設定 。
私がそれを実行したとき、パッケージは元々、その値をDB_TIMESTAMP
に格納する精度を失っていたために失敗しました 。列をDB_TIMESTAMP2
と入力すると、成功しました。