文字と Unicode エスケープ・シーケンスで構成される文字列を NCHAR 文字列に変換します。
UNISTR( string-expression )
string-expression 変換される文字列。
NVARCHAR
LONG NVARCHAR
UNISTR 関数を使用すると、SQL 文で使用される CHAR 文字セットで表現できない Unicode 文字を使用できるようになります。たとえば、英語環境では UNISTR 関数を使用すると、漢字を使用できるようになります。
UNISTR 関数には N'' 定数と機能が似ています。ただし、UNISTR 関数は Unicode 文字と CHAR 文字セットの文字を使用できますが、N'' 定数は CHAR 文字セットの文字のみを使用できます。
string-expression には文字と Unicode のエスケープ・シーケンスが含まれます。Unicode のエスケープ・シーケンス形式は、\uXXXX または \uXXXXXX です (各 X は 16 進数)。UNISTR 関数は、個々の文字と Unicode のエスケープ・シーケンスを対応する Unicode 文字に変換します。
6 桁の Unicode のエスケープ・シーケンスを使用する場合、値は Unicode のコードポイントの最大値である 10FFFF を超えません。\u234567 などのシーケンスは 6 桁の Unicode エスケープ・シーケンスではありません。4 桁のシーケンス \u2345 の後に、文字 6 と 7 が続きます。
2 つの隣接する Unicode エスケープ・シーケンスが UTF-16 の代理ペアを構成する場合、出力時に 1 つの Unicode 文字に結合されます。
SQL/2003 ベンダ拡張。
次の例は、文字列 Hello を返します。
SELECT UNISTR( 'Hel\u006c\u006F' ); |
次の例は、UTF-16 の代理ペア D800-DF02 を Unicode コードポイント 10302 に結合します。
SELECT UNISTR( '\uD800\uDF02' ); |
この例は前の例と同等です。
SELECT UNISTR( '\u010302' ); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |