この関数に渡された式は、次のデータ型を持っている必要があります。
- instring = VARBYTEまたはBLOB
- out_encoding = VARCHAR(64)
out_encodingがサポートされているエンコーディングの1つでない場合は、エラーが返されます。
変換の結果が結果のデータ型の長さを超えた場合は、エラーが生成されます。
instringとout_encodingのどちらかがNULLの場合、結果はNULLになります。
戻り型の文字セットは、LatinまたはUnicodeに設定されます。戻り型の文字セットは、エンコーディング入力パラメータの文字セットに一致するように設定されます。
UDFに適用される暗黙のデータ型変換ルールを使用して上記のタイプに変換できる、データ型の引数も渡すことができます。
UDFの暗黙の型変換ルールは、Teradata Databaseで通常使用される暗黙の型変換ルールよりも制限されています。UDFの暗黙の変換ルールに従って、必要なデータ型に変換できない引数は、明示的にキャストする必要があります。
CLOBまたはBLOBの最大入力または出力サイズは2GBです。サイズが超過すると、エラーが報告されます。
FROM_BYTES関数は、VARBYTEと文字列から変換します。上位ビットが1の場合、バイト列は負として解釈されます。
データの解釈が異なるため、FROM_BYTESはバイトからバイトへのエンコーディング変換をしません。さらに、バイト エンコーディングは正または負の符号を使用せず、データが正または負の数であればFROM_BYTESが解読する必要があります。
バイトからバイトへの変換を使用する必要がある場合は、2つのTO_BYTE関数を使用します。(注:構文はTO_BYTESではなく、TO_BYTEです。)