Forskel mellem Varchar og Nvarchar | Nvarchar vs Varchar
Varchar vs Nvarchar
Forskellen mellem varchar og nvarchar angiver, hvordan data lagres i en database. Et databasesystem består af data, og data defineres af datatyper. En datatype fortæller, hvilken slags værdi en kolonne kan indeholde. Hver kolonne i en database tabel skal have et navn og en datatype. I dag er der mange datatyper til rådighed i databasedesign. Ud af disse datatyper bruges varchar og nvarchar til at lagre strengkarakterer. Varchar og Nvarchar synes at være udskiftelige. Men disse to typer har forskellige fordele, og de bruges til forskellige formål.
Hvad er Varchar?
Som navnet antyder, er varchar en varierende karakter eller varierende char. Syntaks af varchar er VARCHAR [(n | max)]. Varchar gemmer ASCII-data, der er ikke-Unicode-data, og det er datatypen, der bruges til normal brug. Varchar bruger en byte pr tegn. Det lagrer også længden af hver streng i databasen. Varchar har en variabel datalængde og kan gemme maksimalt 8000 ikke-Unicode-tegn. Denne datatype er meget fleksibel og vil acceptere de fleste forskellige typer data. Varchar giver dig ikke mulighed for at gemme tomme tegn for de ubrugte dele af strengen. Den maksimale lagringsstørrelse på varchar er 2 GB, og den reelle lagringsstørrelse af data er den faktiske længde af data plus to byte. Selv om varchar er langsommere end char, bruger den dynamisk hukommelseallokering. Ikke kun strenge, men også ikke-strengetyper som datatyper, "14. februar", "12/11/2014" kan også gemmes i varchar datatype.
Hvad er Nvarchar?
Nvarchar foreslår en national variabel karakter eller en national variabel char. Syntaks af nvarchar er NVARCHAR [(n | max)]. Nvarchar kan gemme forskellige typer data med varierende længde. De er Unicode-data og flersprogede data og sprog med double-byte-lignende tegn på kinesisk. Nvarchar bruger 2 byte pr tegn, og den kan gemme maksimalgrænse på 4000 tegn og en maksimal længde på 2 GB. Nvarchar behandler "" som tom streng og nul tegnlængde. Lagringsstørrelse er dobbelt så mange tegnstørrelser plus to bytes. I nvarchar fjernes de bageste rum ikke, når værdien er gemt og modtaget.
Hvad er forskellen mellem Varchar og Nvarchar?
Nøgleforskellen mellem varchar og nvarchar angiver, hvordan data lagres i en database.
• Varchar gemmer ASCII-værdier og nvarchar gemmer Unicode-tegn.
• Varchar bruger en byte per tegn, mens nvarchar bruger to bytes pr. Tegn.
• Varchar [(n)] gemmer ikke-Unicode-tegn med variabel længde, og Nvarchar [(n)] gemmer Unicode-tegn med variabel længde.
• Varchar kan gemme maksimalt 8000 ikke-Unicode-tegn, og nvarchar gemmer maksimalt 4000 Unicode- eller ikke-Unicode-tegn.
• Varchar er bedre at bruge på steder, hvor variabler med ikke-Unicode-tegn er. Nvarchar bruges på steder hvor varibler med Unicode-tegn er.
• Lagringsstørrelse af varchar er antal bytes svarende til antallet af tegn plus to bytes, der er reserveret til offset. Nvarchar bruger antal bytes svarende til det dobbelte antal tegn plus to bytes, der er forbeholdt offset.
• Alle moderne operativsystemer og udviklingsplatforme bruger Unicode internt. Derfor er nvarchar meget anvendt i stedet for varchar for at undgå omdannelse af datatyper.
Sammendrag:
Nvarchar vs Varchar
Varchar og nvarchar er datatyper af variabel længde, som vi bruger til at gemme forskellige typer af strenge. Disse datatyper er nyttige i moderne operativsystemer. Disse typer af datatyper undgår konvertering af data fra en type til en anden i henhold til operativsystemerne. Derfor hjælper varchar og nvarchar programmereren til at identificere Unicode- og non-Unicode-strenge uden meget vanskeligheder. Disse to datatyper er meget nyttige i programmeringen.
Billeder Hilsen:
- Varchar af Caius Durling (CC BY 2. 0)