sql >> Databasteknik >  >> RDS >> Sqlserver

Vad är skillnaden mellan VARCHAR och NVARCHAR i SQL-server - SQL Server / T-SQL Tutorial Del 32

Varchar är teckendatatyp med variabel längd som används för att lagra icke-Unicode-dataformat. Du kan tänka på Non-Unicode som engelska tecken.

NVarchar är också teckendatatyp med variabel längd som används för att lagra UniCode-dataformat. För Unicode-dataformat kan du tänka på alfabet av kinesiska, japanska, koreanska och arabiska.

Varchar kan lagra "engelska" tecken och det tar en byte att lagra varje tecken. Nvarchar kan lagra tecken på engelska och andra språk. NVarchar tar två byte för att lagra varje tecken.

Låt oss skapa två variabler och kontrollera utrymmet som används av varje variabel.

Declare @Variable1 VARCHAR(20)
Declare @Variable2 NVARCHAR(20)

SET @Variable1='TechBrothersIT'
SET @Variable2='TechBrothersIT'

Select datalength(@Variable1) as VarLength1, datalength(@Variable2) as VarLength2

Vad är skillnaden mellan VARCHAR och NVARCHAR - SQL Server Tutorial

Som vi har deklarera @Variable2 som NVarchar, det tog dubbelt så mycket utrymme jämfört med @Variable1 som är Varchar för att lagra tecknen.


Låt oss skapa en tabell med Varchar och NVarchar Datatypkolumner och infoga några få poster.

Create table dbo.VarcharVsNvarchar( VarcharName Varchar(50),NVarcharName NVARCHAR(50))
insert into dbo.VarcharVsNvarchar  Values
('عامر','عامر'),
('عامر',N'عامر'),
('TechBrothersIT',N'TechBrothersIT')

Select * from dbo.VarcharVsNvarchar
go
Select DataLength(VarcharName) AS CHARNameLength,DataLength(NVarcharName) AS VarNameLength 
From dbo.VarcharVsNvarchar

Varchar VS Nvarchar i SQL Server - TSQL Tutorial

Vår första Select-fråga gav oss uppgifterna. Märkte att vi har en del skräpdata ????. Även vi har definierat datatypen för kolumn NVarchar, den infogade skräpet. För att infoga Unicode-data i Nvarchar-typkolumnen måste vi använda N med data som du kan se i andra infogningen (('عامر',N'عامر')).


  1. Skapa PostgreSQL-databas i farten med Hibernate även om DB inte finns

  2. Hur man får månaden från ett datum i MySQL

  3. Hur man lägger till en logotyp till en formulärrubrik i Microsoft Access

  4. PostgreSQL-installation på Docker