Verschil tussen Varchar en Nvarchar

Varchar versus Nvarchar
 

Het verschil tussen varchar en nvarchar geeft aan hoe gegevens in een database worden opgeslagen. Een databasesysteem bestaat uit gegevens en gegevens worden gedefinieerd door gegevenstypen. Een gegevenstype geeft aan dat wat voor soort waarde een kolom kan bevatten. Elke kolom in een databasetabel moet een naam en een gegevenstype hebben. Tegenwoordig zijn er veel gegevenstypen beschikbaar in het ontwerpen van databases. Uit deze gegevenstypen worden varchar en nvarchar gebruikt om tekenreeksen op te slaan. Varchar en Nvarchar lijken onderling uitwisselbaar. Maar deze twee typen hebben verschillende voordelen en worden voor verschillende doeleinden gebruikt.

Wat is Varchar?

Zoals de naam al doet vermoeden, is varchar een variërend karakter of variërende char. Syntaxis van varchar is VARCHAR [(n | max)]. Varchar slaat ASCII-gegevens op die niet-Unicode-gegevens zijn en het gegevenstype dat bij normaal gebruik wordt gebruikt. Varchar gebruikt één byte per teken. Het slaat ook de lengte van elke string in de database op. Varchar heeft een variabele gegevenslengte en kan maximaal 8000 niet-Unicode-tekens opslaan. Dit gegevenstype is zeer flexibel en accepteert de meeste verschillende soorten gegevens. Varchar laat je geen lege tekens opslaan voor de ongebruikte delen van de tekenreeks. De maximale opslagcapaciteit van varchar is 2 GB en de werkelijke opslagcapaciteit van gegevens is de werkelijke lengte van de gegevens plus twee bytes. Hoewel varchar langzamer is dan char, gebruikt het dynamische geheugentoewijzing. Niet alleen strings, maar ook niet-stringtypen zoals datumtypen, "14 februari", "12/11/2014" kunnen worden opgeslagen in varchar-gegevenstype.

Wat is Nvarchar?

Nvarchar suggereert een nationaal variërend karakter of een nationaal variërend teken. Syntaxis van nvarchar is NVARCHAR [(n | max)]. Nvarchar kan verschillende soorten gegevens opslaan met variërende lengte. Het zijn Unicode-gegevens en meertalige gegevens en talen met double-byte-achtige tekens in het Chinees. Nvarchar gebruikt 2 bytes per teken en kan een maximale limiet opslaan van 4000 tekens en een maximale lengte van 2 GB. Nvarchar behandelt "" als lege tekenreeks en nul-tekenlengte. Opslaggrootte is twee keer zo groot als het aantal tekens plus twee bytes. In nvarchar worden de volgspaties niet verwijderd wanneer de waarde wordt opgeslagen en ontvangen.

Wat is het verschil tussen Varchar en Nvarchar?

Het belangrijkste verschil tussen varchar en nvarchar geeft aan hoe gegevens worden opgeslagen in een database.

• Varchar slaat ASCII-waarden en nvarchar op en slaat Unicode-tekens op.

• Varchar gebruikt één byte per teken, terwijl nvarchar twee bytes per teken gebruikt.

• Varchar [(n)] slaat niet-Unicode-tekens op met variabele lengte en Nvarchar [(n)] slaat Unicode-tekens op met variabele lengte.

• Varchar kan maximaal 8000 niet-Unicode-tekens en nvarchar-winkels opslaan met een maximum van 4000 Unicode- of niet-Unicode-tekens.

• Varchar is beter te gebruiken op plaatsen waar variabelen met niet-Unicode-tekens zijn. Nvarchar wordt gebruikt op plaatsen waar varibles met Unicode-tekens zijn.

• Opslaggrootte van varchar is het aantal bytes dat gelijk is aan het aantal tekens plus twee bytes dat gereserveerd is voor offset. Nvarchar gebruikt het aantal bytes dat gelijk is aan het dubbele aantal tekens plus twee bytes dat is gereserveerd voor offset.

• Alle moderne besturingssystemen en ontwikkelingsplatforms gebruiken Unicode intern. Daarom wordt nvarchar in hoge mate gebruikt in plaats van varchar om conversie van gegevenstypen te voorkomen.

Samenvatting:

Nvarchar vs Varchar

Varchar en nvarchar zijn datatypes met variabele lengte die we gebruiken om verschillende soorten strings op te slaan. Deze gegevenstypen zijn nuttig in moderne besturingssystemen. Deze soorten gegevenstypes vermijden de conversie van gegevens van het ene type naar het andere volgens de besturingssystemen. Daarom helpen varchar en nvarchar de programmeur zonder veel moeite Unicode- en niet-Unicode-reeksen te identificeren. Deze twee gegevenstypen zijn erg handig bij het programmeren.

Afbeeldingen beleefdheid:

  1. Varchar door Caius Durling (CC BY 2.0)