質問

47306832975095894070.85314746810624532というOracleデータベースの番号があります。 SQL Serverに取り込むと、確かにそれほど多くの桁が表示されません。 4.73068329750959E + 19と表示され、フィールドはFLOATとして定義されています。

おそらくすべての有効数字が含まれていると思いますが、その数字をOracleが保持していたとおりに保存できるかどうかを尋ねられています。すべての数字を格納する別のデータ型はありますか? SQL Server 2005に、指数ではなく数字を表示する方法はありますが、保存されているすべての数字を表示する方法はありますか?

役に立ちましたか?

解決

NUMBER (p、s) Sql Server上のOracleデータ型は数値 (p、s)データ型。 p (精度)と s (スケール)のデフォルト値は、両方のプラットフォームで同じではないことに注意してください。

SQL Serverでは、 float まったく異なる浮動小数点数を表します。おおよその数字の表現。 Oracleでは、 BINARY_DOUBLE

他のヒント

10進データ型を使用します。 decimal(p、s)-pは精度値、sはスケール値です。

フロートの代わりに、Decimal(38,17)を使用します。これにより、Oracleと同じ精度で数値を格納できるようになります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top