- UPDATE
- INSERT
- 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 data type conversion requires that an appropriate cast definition (see Usage Notes) exists that specifies the AS ASSIGNMENT clause.
The source numeric type of the cast definition does not have to be an exact match to the source numeric type of the implicit conversion. Teradata Database can use an implicit cast definition that specifies a BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL/NUMERIC, NUMBER, or REAL/FLOAT/DOUBLE target type.
- BYTEINT
- SMALLINT
- INTEGER
- BIGINT
- DECIMAL/NUMERIC
- NUMBER
- REAL/FLOAT/DOUBLE
If no numeric-to-UDT implicit cast definitions exist, Teradata Database looks for other cast definitions that can substitute.
IF the following combination of implicit cast definitions exists … | THEN Teradata Database … | |
---|---|---|
DATE-to-UDT | Character-to-UDT | |
X | uses the DATE-to-UDT implicit cast definition. | |
X | uses the character-to-UDT implicit cast definition. The character type cannot be CLOB. If multiple character-to-UDT implicit cast definitions exist, then Teradata Database returns an SQL error. |
|
X | X | reports an error. |
Substitutions are valid because Teradata Database can implicitly cast a numeric type to the substitute data type, and then use the implicit cast definition to cast from the substitute data type to the UDT.