DB2 data source
There are some conditions to consider when you are preparing a DB2® database data source.
Big integer and decimal data types
Some DB2 number data types are subject to rounding in the IBM® Intelligent Operations Center user interface. For example, decimal and big integer data type values are rounded to numbers of 16 digits or decimals with 17 digits.
The IBM Intelligent Operations Center uses JavaScript, which has double-precision 64-bit format IEEE 754 values to represent numbers. This method provides 53-bit precision. Some DB2 data types, for example decimal and big integer data types, allow higher levels of precision, up to 63 bits. The REST API services can avail of the full range of possible values. However, when these values are displayed or submitted through the user interface, they might be rounded to fit the lower precision limit of the JavaScript.
- Viewing the data property value in the list, you see a different value to the value stored in the DB2 database.
- Viewing the data property value on the preview card, you see a different value to the value stored in the DB2 database.
- Entering data for the property in the New Item dialog cannot be completed and results in an error.
Character data type
If you have the character data type in your source DB2 database, it might result in unexpected behavior when the data source is configured to use a routing expression. This behavior can occur because extra spaces are incorporated in the message sent to WebSphere® Business Monitor as result of data source routing expression processing.
The character data type in DB2 is a fixed-length column. For example, declare a name property, CHAR(20), and input a name that is shorter than 20 characters, "IBM". DB2 adds spaces to this value. When the data is processed by the data import logic, an expression is evaluated. The data receiver sends the characters "IBM" plus 17 empty character spaces to the routing destination and to the DB2 target table for storage in the IBM Intelligent Operations Center. The result is that your data is not routed as you expected.