Programmer Guide : Data types : Overriding default precision and scale for numeric data types
  
Overriding default precision and scale for numeric data types
The following table provides the override default precision and scale values for numeric data type.
Function calls to
Setting
Override
SQLBindCol or SQLSetDescField
SQL_DESC_TYPE field in an ARD is set to SQL_C_NUMERIC
SQL_DESC_SCALE field in the ARD is set to 0 and the SQL_DESC_PRECISION field is set to a driver-defined default precision. See [1].
SQLBindParameter or SQLSetDescField
SQL_DESC_SCALE field in an APD is set to SQL_C_NUMERIC
SQL_DESC_SCALE field in the ARD is set to 0 and the SQL_DESC_PRECISION field is set to a driver-defined default precision. This is true for input, input/output, or output parameters. See [1].
SQLGetData
Data is returned into an SQL_C_NUMERIC structure
Default SQL_DESC_SCALE and SQL_DESC_PRECISION fields are used. See [2].
[1] If the defaults are not acceptable for an application, the application can call the SQLSetDescField or SQLSetDescRec to set the SQL_DESC_SCALE or SQL_DESC_PRECISION field.
[2] If the defaults are not acceptable, the application must call SQLSetDescRec or SQLSetDescField to set the fields and then call SQLGetData with a TargetType of SQL_ARD_TYPE to use the values in the descriptor fields.
See also
Data types