Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
NCHAR データ型は、32767 文字までの Unicode 文字データを格納します。
NCHAR [ ( max-length ) ]
max-length 文字列の文字単位での最大長。長さの範囲は 1 ~ 32767 です。指定しない場合の長さは 1 です。
文字は UTF-8 エンコーディングを使用して格納されます。格納に必要な最大バイト数は、max-length を 4 倍した値です。ただし、通常、実際に使用される格納バイト数はより少ない値です。
NCHAR は NATIONAL CHAR または NATIONAL CHARACTER と指定することもできます。どの構文を使用する場合でも、データ型は NCHAR と記述されます。
Embedded SQL クライアントで NCHAR カラムに DESCRIBE が実行される場合、db_change_nchar_charset 関数が呼び出されたかどうかに応じて、返されるデータ型は DT_FIXCHAR または DT_NFIXCHAR になります。
また、Embedded SQL クライアントで NCHAR カラムに DESCRIBE が実行される場合、返される長さは、クライアントの NCHAR 文字セットの最大バイト長です。たとえば、西ヨーロッパ言語の文字セット cp1252 を NCHAR 文字セットに使用する Embedded SQL クライアントの場合、NCHAR(10) カラムは、長さ 10 (10 文字の文字ごとに最大で 1 バイトを乗じた値) の DT_NFIXCHAR 型として記述されます。日本語の文字セット cp932 を使用する Embedded SQL クライアントの場合、同じ NCHAR(10) カラムは長さ 20 (10 文字の文字ごとに最大で 2 バイトを乗じた値) の DT_NFIXCHAR 型として記述されます。記述された長さが 32767 バイトを超える場合、カラムは DT_LONGNVARCHAR 型として記述されます。
セマンティック上、NCHAR は NVARCHAR と同じですが、型は異なります。SQL Anywhere では、NCHAR は可変長型です。他のリレーショナルデータベース管理システムでは、NCHAR は固定長型であり、データには max-length 文字までブランクが埋め込まれて格納されます。SQL Anywhere では格納される文字データにブランクを埋め込みません。
ODBC の場合、NCHAR は SQL_WCHAR として記述されます。
SQL/2008 各国の文字のサポートは、SQL/2008 標準の機能 F421 です。