私はSQL Serverデータベースで作業しており、数値型がデータに十分な大きさであることを確認する必要があります。Java doubleとOracleがSQL Serverの数値に浮動小数点
Java double
とOracle float(126)
の2つのソースがあります。
SQL Serverの種類はnumeric(30,10)
またはnumeric(15,8)
です。
私はJavaは+ 308 1.7976931348623157Eから-4.9E-324の値を格納することができる倍増SQL Serverのnumeric(30,10)
は精度のわずか30桁あり、小数点以下10桁を可能にしながら、オラクルfloat(126)
は、精度の約38桁を有することを読み出しますポイント。
numeric(30,10)
はdouble
とfloat(126)
では安全ではないため、精度やオーバーフローが発生する可能性があります。これらはDOUBLE PRECISION
に変更する必要がありますか?
[microsoft docs](http://msdn.microsoft.com/en-us/library/ms173773.aspx)によれば、設定可能な最高値は1.79E + 308で、OP要件に一致します。奇妙なことに、下限は、私が期待していなかったように思われません。 –
@Damien_The_Unbeliever:64ビット浮動小数点の範囲です。 OracleがFLOAT(126)を許可している場合、その範囲はもっと大きくなければなりません。下限は、最小の「正規」値と最小正規化されていない値のリストがあるため、異なります。 –