Datatype conversion
When you retrieve or update columns, in general PowerBuilder
converts data appropriately between the Oracle datatype and the
PowerScript datatype. Keep in mind, however, that similarly or
identically named Oracle and PowerScript datatypes do not necessarily
have the same definitions.
For information about the definitions of PowerScript datatypes,
see the section called “Datatypes” in PowerScript Reference.
Number datatype converted to
decimal
When a DataWindow object is defined in PowerBuilder, the Oracle
datatype number(size,d) is mapped to a decimal datatype. In
PowerBuilder, the precision of a decimal is 18 digits. If a column’s
datatype has a higher precision, for example number(32,30), inserting a
number with a precision greater than 18 digits produces an incorrect
result when the number is retrieved in a DataWindow. For example,
1.8E-17 displays as 0.000000000000000018, whereas 1.5E-25 displays as
0.
You might be able to avoid this problem by using a different
datatype, such as float, for high precision number columns in the Oracle
DBMS. The float datatype is mapped to the number datatype within the
DataWindow’s source.