Argument Types and Rules - Advanced SQL Engine - Teradata Database

SQL Data Types and Literals

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-22
dita:mapPath
zsn1556242031050.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1143
lifecycle
previous
Product Category
Teradata Vantageā„¢

Expressions passed to this function must have the following data types:

  • instring = VARCHAR or CLOB
  • in_encoding = VARCHAR(64)

The two input parameters to TO_BYTES must use the same character set. The parameters cannot use different character sets, such as Latin and Unicode.

If in_encoding is not one of the supported encodings, an error is returned.

If either instring or in_encoding is NULL, the result is NULL.

You can also pass arguments with data types that can be converted to the above types using the implicit data type conversion rules that apply to UDFs.

The UDF implicit type conversion rules are more restrictive than the implicit type conversion rules normally used by Teradata Database. If an argument cannot be converted to the required data type following the UDF implicit conversion rules, it must be explicitly cast.

The maximum input or output for CLOB or BLOB size is 2 GB. An error is reported if the size is exceeded.

The TO_BYTES function converts from a character string to a VARBYTE. The character strings are treated as positive unless there is an explicit negative sign. Byte strings are interpreted as negative if the high order bit is 1.

TO_BYTES should not be used for byte to byte encodings, since TO_BYTES tries to interpret the sign of the byte string.

If you must use byte to byte conversion, use the two TO_BYTE functions. (Note the syntax is TO_BYTE, not TO_BYTES.)