nchar および nvarchar (Transact-SQL)

固定長 (nchar) または可変長 (nvarchar) の Unicode データで、UNICODE UCS-2 文字セットを使用する文字データ型です。

  • nchar [ ( n ) ]
    固定長の Unicode 文字列データです。 n では文字列の長さを定義し、指定できる値の範囲は 1 ~ 4,000 です。 ストレージのサイズは、n の 2 倍のバイト数です。 照合順序のコード ページで 2 バイト文字が使用されている場合、記憶領域のサイズは n バイトのままです。 文字列によっては、n バイトの記憶領域のサイズが n に指定された値よりも小さくなる可能性があります。 nchar の ISO シノニムは、national char および national character です。

  • nvarchar [ ( n | max ) ]
    可変長の Unicode 文字列データです。 n では文字列の長さを定義し、指定できる値の範囲は 1 ~ 4,000 です。 max は最大格納サイズが 2^31-1 バイト (2 GB) であることを示します。 記憶領域のサイズ (バイト単位) は、入力したデータの実際の長さの 2 倍のバイト数に 2 バイトを足した数です。 nvarchar の ISO シノニムは、national char varying および national character varying です。

説明

データ定義または変数宣言ステートメントで n を指定しないと、既定の長さは 1 になります。 CAST 関数で n を指定しないと、既定の長さは 30 になります。

列データ エントリが類似したサイズになると思われる場合は、nchar を使用します。

列データ エントリのサイズが大幅に異なると思われる場合は、nvarchar を使用します。

sysname は、NULL 値を許可しないという点を除き、機能上は nvarchar(128) と同じ、システムから提供されているユーザー定義データ型です。 sysname はデータベース オブジェクト名を参照するために使用されます。

COLLATE 句で特定の照合順序を指定しない限り、nchar 型または nvarchar 型を使用するオブジェクトにはデータベースの既定の照合順序が割り当てられます。

SET ANSI_PADDING は、nchar と nvarchar に対して常に ON です。 SET ANSI_PADDING OFF は、nchar または nvarchar データ型には適用されません。

文字データの変換

文字データの変換方法の詳細については、「char および varchar (Transact-SQL)」を参照してください。

関連項目

参照

ALTER TABLE (Transact-SQL)

CAST および CONVERT (Transact-SQL)

COLLATE (Transact-SQL)

CREATE TABLE (Transact-SQL)

データ型 (Transact-SQL)

DECLARE @local\_variable (Transact-SQL)

LIKE (Transact-SQL)

SET ANSI_PADDING (Transact-SQL)

SET @local\_variable (Transact-SQL)

概念

照合順序と Unicode のサポート