2009-03-10 21 views
0

Bir java uygulaması üzerinde çalışıyorum, unitprice, qty vb. Değerini kaydetmek için double tip kullanıyorum. MSSQL'de bu değerlerin bir kısmının NAN olduğunu ve çalıştığımda sonsuz hata attığını gördüm yeniden kullanmak için.Bu çok mantıksız, ben kaydedebilirsiniz ama artık kullanamazsınız! Ben MSSQL NAN değeri ilk java varlığı olduğunda geçerli olmalıdır, bu yüzden kaydedebilirsiniz.Ne zaman ve bu sorun olduğunda?MSSQL içinde float alanında NaN değeri

cevap

3

ürününü asla ürünüyle birlikte depolamak için çift veya şamandıra kullanmalısınız. Bunun yerine ondalık kullanın. Çift ve float veri türleri gerçekten hassas değildir.

FLOAT ve REAL veri türleri, kayan noktalı sayısal verilerle kullanmak için yaklaşık sayı verisi türüne sahiptir. Kayan nokta verileri yaklaşıktır; Veri tipi aralığındaki tüm değerler kesin olarak gösterilemez.

1

NaN değerleri genellikle sıfıra bölünmenin sonucudur - bu, kontrol edeceğim ilk şey olurdu.