File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JDBC and Relational Databases and the fly likes SQL Server Floating Point Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "SQL Server Floating Point" Watch "SQL Server Floating Point" New topic

SQL Server Floating Point

Matt Cannata

Joined: Mar 23, 2001
Posts: 23
Hello everyone,
I am currently working which involves an ecommerce system. The database is MS SQL server 2000 and I am using the MS provided driver. The application runs on Orion Application Server.
I have a container managed OrderLine entity. I've tried the following primary keys for this entity:
Float orderNumber
Float lineNumber
BigDecimal orderNumber
BigDecimal lineNumber
In the DB schema, these are defined as type float. The DB supports the iMIS enterprise management system, so I can't change it (though I'd like to.) I'm trying to insert floating point values into the lineNumber field. Before the insert takes place, my program logs the proper values (1.01, 1.02, 1.03... .)
However, in the database the values end up distorted: (1.00999999046326, 1.01999998092651,
1.02999997138977 ... .) This occurs whether I define the bean with Float fields or BigDecimal fields.
Has anyone else encountered this problem? Is there a solution other than changing the schema to use decimal instead of float?
Any help appreciated,
I agree. Here's the link:
subject: SQL Server Floating Point
It's not a secret anymore!