TRANSLATE ... USING
構文
目的
TRANSLATE
... USING
は、char
をデータベース文字セットと各国語文字セット間の変換に指定された文字セットに変換します。
ノート:
TRANSLATE
... USING
は、主にANSIとの互換性のためにサポートされているファンクションです。TO_CHAR
およびTO_NCHAR
ファンクションを使用してデータをデータベース文字セットまたは各国語文字セットに適切に変換することをお薦めします。TO_CHAR
およびTO_NCHAR
は、文字データのみを受け入れるTRANSLATE
... USING
に比べ、より多くのデータ型を引数として取ることができます。
引数char
は変換する式です。
-
USING
CHAR_CS
引数を指定すると、char
がデータベース文字セットに変換されます。出力データ型はVARCHAR2
です。 -
USING
NCHAR_CS
引数を指定すると、char
が各国語文字セットに変換されます。出力データ型はNVARCHAR2
です。
このファンクションは、OracleのCONVERT
ファンクションに似ていますが、入力または出力のデータ型にNCHAR
またはNVARCHAR2
を使用する場合は、CONVERT
ではなくこのファンクションを使用する必要があります。入力にUCS2コードポイントまたはバックスラッシュ(\)が含まれる場合は、UNISTR
ファンクションを使用してください。
関連項目:
-
TRANSLATE
...USING
の文字の戻り値に割り当てる照合を定義する照合導出ルールは、『Oracle Databaseグローバリゼーション・サポート・ガイド』の付録Cを参照してください。
例
次の文は、サンプル表oe.product_descriptions
のデータを使用して、TRANSLATE
... USING
ファンクションの使用方法を示しています。
CREATE TABLE translate_tab (char_col VARCHAR2(100), nchar_col NVARCHAR2(50)); INSERT INTO translate_tab SELECT NULL, translated_name FROM product_descriptions WHERE product_id = 3501; SELECT * FROM translate_tab; CHAR_COL NCHAR_COL -------------------- -------------------------------------------------- . . . C pre SPNIX4.0 - Sys C pro SPNIX4.0 - Sys C til SPNIX4.0 - Sys C voor SPNIX4.0 - Sys . . . UPDATE translate_tab SET char_col = TRANSLATE (nchar_col USING CHAR_CS); SELECT * FROM translate_tab; CHAR_COL NCHAR_COL ------------------------- ------------------------- . . . C per a SPNIX4.0 - Sys C per a SPNIX4.0 - Sys C pro SPNIX4.0 - Sys C pro SPNIX4.0 - Sys C for SPNIX4.0 - Sys C for SPNIX4.0 - Sys C til SPNIX4.0 - Sys C til SPNIX4.0 - Sys . . .