nchar und nvarchar (Transact-SQL)

String-Datentypen, bei denen es sich um Unicode-Daten mit fester Länge (nchar) oder variabler Länge (nvarchar) handelt und die den UNICODE UCS-2-Zeichensatz verwenden.

  • nchar [ ( n ) ]
    Unicode-Zeichenfolgendaten mit fester Länge. n definiert die Zeichenfolgenlänge und muss ein Wert zwischen 1 und 4.000 sein. Die Speichergröße beträgt 2 x n Bytes. Auch wenn die Sortierungscodepage Doppelbytezeichen verwendet, ist die Speichergröße nach wie vor n Bytes. Abhängig von der Zeichenfolge kann die Speichergröße von n Bytes kleiner als der für n angegebene Wert sein. Die ISO-Synonyme für nchar sind national char und national character.

  • nvarchar [ ( n | max ) ]
    Unicode-Zeichenfolgendaten mit variabler Länge. n definiert die Zeichenfolgenlänge und kann ein Wert zwischen 1 und 4.000 sein. max gibt an, dass die maximale Speichergröße 2^31-1 Bytes (2 GB) beträgt. Die Speichergröße in Bytes ist doppelt so groß wie die tatsächliche Länge der eingegebenen Daten + 2 Bytes. Die ISO-Synonyme für nvarchar sind national char varying und national character varying.

Hinweise

Wenn n in einer Datendefinitions- oder Variablendeklarationsanweisung nicht angegeben ist, beträgt die Standardlänge 1. Falls n bei der CAST-Funktion nicht angegeben ist, ist die Standardlänge 30.

Verwenden Sie nchar, wenn die Größen der Spaltendateneinträge wahrscheinlich ähnlich sein werden.

Verwenden Sie nvarchar, wenn die Größen der Spaltendateneinträge wahrscheinlich stark variieren werden.

sysname ist ein vom System bereitgestellter benutzerdefinierter Datentyp, der funktional nvarchar(128) entspricht, außer dass er keine NULL-Werte zulässt. sysname wird zum Verweisen auf Datenbank-Objektnamen verwendet.

Objekten, für die nchar oder nvarchar verwendet wird, wird die Standardsortierung der Datenbank zugewiesen, es sei denn, mithilfe der COLLATE-Klausel wird eine bestimmte Sortierung zugewiesen.

SET ANSI_PADDING hat für nchar und nvarchar immer den Wert ON. SET ANSI_PADDING OFF gilt nicht für die Datentypen nchar und nvarchar.