2009-06-09 12 views
1

SSISパッケージを使用していますが、送信元から宛先に何も変更されていません。しかし、私が今注目しているコラムは、ソースとデスティネーションのデータ型が少し異なります(私は問題ではないと思います)。ソースに数値(15,2)があり、宛先に数値(16,2)があり、ソース内のデータが4.75で5に変更されます。SQL Server Integration Servicesで丸め値を停止する方法?

小数点以下1桁の削減です確かに、私はそのケースでテストしたので問題ではありません。

なぜ値は丸められますか?

答えて

1

あなたが残している重要な情報は明らかです。

データビューアのフロー内のデータを見て、変更が発生した場所を確認しましたか?

+0

Yeah..iはそれを考え出した...データビューアは、整数型が数値に変更されたことを示し、問題が発生した場所、それはね... ありがとうケイド – sagar

0

データフロー内のすべてのタスクの詳細エディタを確認します(タスク - >詳細エディタを右クリックします)。列タブに移動し、外部、入力、および出力列をチェックして、列が決して整数でないことを確認します。

私が推測しているのは、数値ではなく(ソース上の)整数であると思います。

+0

をあなたが儀式だった...それは整数を引っ張りました。数字ではありません...しかし、私はまだなぜそれが整数を引っ張っているのか把握しなければなりません。ソース表の列名は数値に設定されており、引き数はnumericaデータ型の合計です。私はちょうどなぜそれが整数を引っ張っているのだろうかと思っています... – sagar

0

欠けているものがあります。何らかの種類の演算(例えば乗算)をどこかの定数で行うことができます(5.0の代わりに5を掛ける)?

+0

ええと...整数を引きます。私はなぜそれを理解する必要があります... – sagar

0

私も同じ問題がありました。 BIDSにはバグがあるようです。私のOLE DBタスクは、以前はintとして価格が設定されていました。私の間違いを認識して私はそれを金に変えましたが、BIDS/SSISはそれを丸めてINTとして扱いました。私はすべてを試してみましたが、最終的にこれを解決する唯一のことは、OLE DBタスクを削除し、新しいタスクをドラッグすることでした。私は同じクエリを使用しましたが、お金でうまくいきました。それはBIDS/SSISのようなもので、奇妙な「記憶」があり、それを唯一の方法で再開することです!

関連する問題