2017-05-31 7 views
2

私はSQLクエリでOLEDBソースを持っています。私はテーブルからデータをフェッチするコードを書いています。また、それはいくつかの変換を持っています(varcharからdatetimeへ)。 ランダムなデータが99999999のようになると、その値をdatetimeに変換できず、失敗します。 このような行を処理して、何らかのエラー出力にリダイレクトすることは可能ですか?SSIS - OLEDB SQLテーブルソース変換エラー - ハンドル

注 - 私は、エラー出力オプションを試してみましたが、それは作品があるdoesntのソースクエリ自体は失敗し、パッケージ全体が理由で失敗したこと

答えて

0

変換がないときはnullに設定されますクエリでtry_convert使用することができます可能。その後、必要に応じて、データフロー内の別のコンポーネントでnullの日付を処理できます。

例:

select try_convert(date, '20150101') 
select try_convert(date, '99999999') 
+0

おかげで、それが動作します..しかし、私はこのようなシナリオのためにOLEDBソース・レベルでのエラー処理のようなものを望んでいました。 –

+0

パイプラインに行を送る前にSQLが失敗するため、これは可能ではないと私は考えています。または、OLEDBソースを使用してテーブルを読み取ってから、データ変換コンポーネントを使用して変換を実行すると、間違った行を分離することができます。 – Jayvee

関連する問題