構文
用途
UNISTR
は、引数としてテキスト・リテラルまたは文字データに変換する式を取り、各国語キャラクタ・セットで戻します。データベースの各国語キャラクタ・セットは、AL16UTF16またはUTF8です。UNISTR
では、文字列への文字のUnicodeエンコーディング値の指定を可能にすることによって、Unicode文字列リテラルがサポートされます。これは、NCHAR
列にデータを挿入する場合などに有効です。
Unicodeエンコーディング値は、\xxxxという形式です。xxxxは、文字のUCS-2エンコーディング形式での16進数値です。補足文字は2つのコード・ユニットとしてエンコードされ、最初のコード・ユニットは上位サロゲート範囲(U+D800からU+DBFF)から、2番目のコード・ユニットは下位サロゲート範囲(U+DC00からU+DFFF)から取得されます。文字列そのものにバックスラッシュを含めるには、文字列の先頭に別のバックスラッシュ(\\)を付けます。
移植性およびデータ保護のために、UNISTR
文字列の引数にはASCII文字およびUnicodeエンコーディング値のみを指定することをお薦めします。
関連項目: Unicodeおよび各国語キャラクタ・セットの詳細は、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください。 |
例
次の例では、ASCII文字およびUnicodeエンコーディング値をUNISTR
ファンクションに渡した後、そのUNISTRファンクションによって各国語キャラクタ・セットで文字列が戻されます。
SELECT UNISTR('abc\00e5\00f1\00f6') FROM DUAL; UNISTR ------ abcåñö