Oracle
 sql >> база данни >  >> RDS >> Oracle

Хибернация загуба на прецизност в резултатите при картографиране на число (22,21) към BigDecimal

Това е резултат от инициализиране на BigDecimal от double :

System.out.println(String.format("%21.20f", new BigDecimal(0.493)); 
// Prints 0,49299999999999999378  

И така, когато BigDecimal инициализирано по този начин се записва в базата данни, създава неточна стойност, която се зарежда правилно по-късно.

Ако BigDecimal се инициализира от низ или ако стойността е зададена директно в Java, всичко работи добре.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01745 грешка при изпълнение на параметризирани заявки в c#

  2. Защо Kafka jdbc свързва вмъква данни като BLOB вместо varchar

  3. OleDB Доставчик на данни не може да бъде намерен VBA/Excel

  4. Заредете огромен csv файл в таблицата на базата данни на oracle с помощта на Pyspark

  5. Как да изберете конкретен елемент от JSON масив в Oracles тип JSON CLOB