INF: Translating DBMONEY Datatype into Actual Dollar Amount (67871)



The information in this article applies to:

  • Microsoft SQL Server 4.2x
  • Microsoft SQL Server 6.0
  • Microsoft SQL Server 6.5
  • Microsoft SQL Server 7.0

This article was previously published under Q67871

SUMMARY

The following information explains how to translate the DBMONEY datatype, which is a structure containing 2 long INTs, to the dollar amount it represents.

MORE INFORMATION

The internal storage of the DBMONEY datatype keeps track of 1/100 of a cent, which equates to .0001 of a dollar. Therefore, you can have precision to four decimal places.

The high word unit is (2^32); this value is 4294967296.

If you enter 429496.7296 in a money field with ISQL and examine the low and high words after extracting the structure with a DB-Library program, you will see high=1, and low=0; therefore, the formula would be as follows:

round(2, ((high*4294967296)+low) / 10000)


This would return $429,496.73.

Modification Type:MinorLast Reviewed:2/14/2005
Keywords:kbProgramming KB67871