Articles

SQL Server-NVARCHAR-Datentyp

Posted on

Verwenden Sie den SQL Server-NVARCHAR-Datentyp, um Spalten, Variablen und Parameter mit Zeichen variabler Länge zu definieren. NVARCHAR-Typen sind in ihrer Länge variabel. Sie nehmen mehr Speicherplatz ein als die gespeicherten Zeichen. Dies unterscheidet sich vom Typ CHAR, der immer die volle definierte Menge belegt.

Der Typ NVARCHAR speichert bis zu 4000 Zeichen, wobei jedes Zeichen zwei Bytes belegt. NVARCHAR eignet sich gut für die Speicherung von Daten mit erweitertem Zeichensatz, wie z. B. Kanji.

Generell gilt: Wenn Sie eine Anwendung schreiben, die mehrere Sprachen unterstützt, dann verwenden Sie NVARCHAR statt VARCHAR.

Definieren von NVARCHAR-Typen

Hier verwenden wir NVARCHAR, um eine Tabelle „Person“ mit einer Länge von 20 für Vorname und 40 für Nachname zu definieren:

CREATE TABLE Person ( PersonID INT NOT NULL, FirstName NVARCHAR(20), LastName NVARCHAR(40) ) 

Hier deklarieren wir eine Variable:

DECLARE @firstName NVARCHAR(20); 

Diese Definitionen sind wie VARCHAR-Definitionen. Der Hauptunterschied ist, dass die Spalten den doppelten Platz einnehmen!

SQL SERVER NVARCHAR Beispiel

Schauen Sie sich diese Abfrage an, bei der LastName als NVARCHAR definiert ist:

SQL SERVER NVARCHAR Beispiel in der Spaltentypdefinition der Tabelle.'s column type definition.

Beachten Sie, dass die DATALENGTH doppelt so lang ist wie die Zeichenlänge. Beachten Sie auch, dass, wenn LastName in VARCHAR konvertiert wird, die DATALENGTH gleich der Zeichenlänge ist.

SELECT LastName ,Len(LastName) ,DATALENGTH(LastName) ,DATALENGTH(CAST(LastName as VARCHAR(20))) FROM Person.Person
SELECT LastName ,Len(LastName) ,DATALENGTH(LastName) ,DATALENGTH(CAST(LastName as VARCHAR(20))) FROM Person.Person

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.