ACC: Rounding Errors Importing/Exporting dBASE IV Values (96905)



The information in this article applies to:

  • Microsoft Access 1.0
  • Microsoft Access 1.1
  • Microsoft Access 2.0

This article was previously published under Q96905

SYMPTOMS

Some floating-point values (single and double precision) have rounding errors when exported to or imported from a dBASE IV database. For example, if the floating-point number .0807 is exported from a Microsoft Access database to a dBASE IV database and then imported back to Microsoft Access, after the import the value reads .08069.

CAUSE

This problem is caused by the floating-point number being converted from IEEE floating-point numeric format (used by Microsoft Access and several other Microsoft products) to ASCII character values required by dBASE IV. The Microsoft Access dBASE ISAM converts IEEE floating- point values to ASCII, and conversion of binary fractions to decimal is inherently inexact.

Typically, such rounding errors are not noticeable or relevant because they occur at digits far to the right of the decimal point and are not displayed. However, sometimes the rounding error may appear in the visible portion of the number.

STATUS

This behavior is by design.

Modification Type:MajorLast Reviewed:5/9/2003
Keywords:kb3rdparty kbprb KB96905