2017-08-11 13 views
1

DB2データベーステーブルにデータを挿入するときに問題が発生します。 私はDataFlowの列の値に従います。私がお伝えしている値が0.0075で、それがcsvファイルから正しく読み込まれているとしましょう。DataViewerに挿入する直前の値をチェックすると、一度それがテーブル上にあれば、値は7.499になります。 また、いくつかの行については、値は変更されません。 このような動作につながる可能性があることをご存知ですか?あなたはこの問題に遭遇しましたか? ご協力いただきありがとうございます。SSIS-DB2:テーブルに挿入するとデータの値が変更される

+0

ターゲットテーブルにトリガがありますか? DB2にアクセスする方法について詳しくは、SQLサーバーのリンクテーブルですか?ターゲットDB2テーブルの列データ型とアプリケーションのデータ型について詳しく説明します。 – mao

+0

トリガーはありません。何もバックグラウンドで実行されていません。 これは、csvファイルから情報を取り出して作業テーブルに入れるのと同じくらい簡単です。タイプは、異なるCSVファイルには、倍精度浮動小数点(DT-R8)だとテーブルには、(6,3)の数値だが、これは値を変更しないでください –

+0

DB2は、SSISから受信した値を表示するようにDB2のDBAを依頼します(変更がどこで起こるかを判断するため)。 DB2の列の値をツールとは関係なく確認するようDBAに依頼します(データを表示する際に問題がある場合のみ)。 10進数の小数点には丸めが含まれますが、あなたの例は小数点以下3桁です。 – mao

答えて

2

倍精度浮動小数点数を使用する代わりに、DT_NUMERICを使用してください。ここでは、ソースから読み込むときに位取りと精度を指定できます。

+0

おかげで簡単にアクセスできません、しようとするでしょう。 https://en.wikipedia.org/wiki/Floating-point_arithmetic#Accuracy_problems –

+0

しかし奇妙な行動を理解していない を働いた – askids

関連する問題