We actually added this type of capability to Sqlite (actually fixed 
point display format numbers), but it may be unnecessary in your case. 
Instead of representing integers as BCD how about using the 64 bit 
Sqlite integers?  You may have sufficient precision.  The COBOL-style 
COMP3 integers are pretty much obsolete these days.

Liam Healy wrote:
> I am porting a numerical application from Oracle to SQLite.  For the
> most part, I have been successful, but there are slight disagreements
> in the floating point number results.  I have traced this back and
> found a problem.  According to
> http://articles.techrepublic.com.com/5100-22_11-5224536.html, Oracle
> by default stores floats as binary-coded decimal (BCD), and not
> IEEE754 binary.  SQLite on the other hand does
> http://www.sqlite.org/datatype3.html: "REAL. The value is a floating
> point value, stored as an 8-byte IEEE floating point number."  For the
> results of the application, it makes no difference how the numbers are
> stored -- the differences in the 15th significant figure are
> irrelevant.  However, I would like to insure that there no
> disagreements in the way the two applications operate (other than the
> storage of floating point numbers), and for that I temporarily need
> exact agreement on input numbers.  I cannot change the Oracle
> application, so I'm wondering if there's a wrapper or something I can
> put around sqlite calls (or better, a mode that I can put sqlite in)
> that will reproduce exactly the BCD format of Oracle.
> 
> Thanks for any guidance.
> 
> Liam
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to