SQL Engine performs implicit Byte-to-UDT conversions for the following operations:
- Passing arguments to stored procedures, external stored procedures, UDFs, and UDMs
- Specific system operators and functions identified in other sections of this document, unless the DisableUDTImplCastForSysFuncOp field of the DBS Control Record is set to TRUE
Performing an implicit Byte-to-UDT data type conversion requires a cast definition that specifies the following:
- the AS ASSIGNMENT clause
- a BYTE, VARBYTE, or BLOB source data type
The source data type of the cast definition does not have to be an exact match to the source of the implicit type conversion.
If multiple implicit cast definitions exist for converting different byte types to the UDT, SQL Engine uses the implicit cast definition for the byte type with the highest precedence. The following list shows the precedence of byte types in order from lowest to highest precedence: