3

私は統合サービスに取り組んでおり、奇妙なバグに遭遇しました。

私のデータフローは次のもので構成されています。

                                         -> DESTINATION
SOURCE -> SCRIPT_COMPONENT -> MULTICAST /
                                        \-> DESTINATION

このエラーは常に発生しますが、対処されている列が異なります。

Error: 0xC0202009 at *STAFF_MIGRATION*, *STAFF_BASE* [627]: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E21.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80040E21  Description: "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.".
Error: 0xC020901C at *STAFF_MIGRATION*, *STAFF_BASE* [627]: There was an error with input column "*LAST_UPDATED_BY*" (651) on input "OLE DB Destination Input" (640). The column status returned was: "The status value given to the provider was not valid.".

LAST_UPDATED_BYは時々異なりますLAST_UPDATE_DATE

奇妙な動作は、宛先へのパスに沿ってデータ ビューアーを追加すると、これが発生しないことです。

何か案は?

編集: VS/BIDS 2008 SPI および SQL Server 2008 (RTM) x64 SP1 で実行しています。

編集: 現在、SQL Server SP3 で実行していますが、それでも動作が発生します。

4

1 に答える 1

1

私の理論は正しいかもしれないと思います。データ ビューアーを配置すると、挿入する前に表示するデータ セットを作成する必要があります。したがって、列の値を構築する必要があります。宛先を一括挿入が意図されている高速ロード テーブルにすることで解決策を見つけました。これは、データを構築する時間があり、列の無効な値に遭遇しないことを意味します..それは単なる推測でしたが、うまくいきました

于 2012-12-14T06:17:52.623 に答える