Varchar versus Nvarchar: verschil en vergelijking

DBMS is software om databases efficiënt te beheren. Een MSSQL is gebaseerd op het relationele model en valt onder het DBMS. De gegevens worden MSSQL opgeslagen in tabellen die met elkaar verbonden zijn.

In elke tabel wordt een specifieke set waarden opgeslagen. Kolommen vertegenwoordigen de attributen, terwijl het record elke rij vertegenwoordigt.   

Wanneer de tabel waarde opslaat, heeft elke kolom een ​​specifiek gegevenstype. Of in eenvoudige bewoordingen, het gegevenstype wordt in elke kolom aangeklikt.

Als het gaat om gegevenstypen, Varchar en Nvarchar zijn er twee die nogal verwarrend zijn. Dit artikel belicht de verschillen tussen varchar en Nvarchar. 

Key Takeaways

  1. VARCHAR slaat tekengegevens met variabele lengte op met één byte per teken, terwijl NVARCHAR tekengegevens met variabele lengte opslaat met twee bytes per teken.
  2. NVARCHAR ondersteunt een breder scala aan tekens, inclusief Unicode-tekens, terwijl VARCHAR alleen niet-Unicode-tekens ondersteunt.
  3. VARCHAR vereist minder opslagruimte dan NVARCHAR vanwege de codering van één byte, waardoor het efficiënter is voor kleinere tekensets.

Varchar versus Nvarchar 

VARCHAR is een gegevenstype dat tekengegevens opslaat in een niet-Unicode-indeling, waardoor minder opslagruimte wordt ingenomen, maar alleen bepaalde tekensets worden ondersteund. NVARCHAR is een gegevenstype dat tekengegevens opslaat in een Unicode-indeling, waardoor meer opslagruimte wordt ingenomen, maar een breder scala aan tekensets wordt ondersteund.

Varchar tegen Nvarchar

Varchar is een gegevenstype gerelateerd aan de variabele karakters in de AQL-server. Geheugentoewijzing is overeenkomstig de ingevoerde tekens.

Tijdens het gebruik van varchar worden niet-Unicode-tekens opgeslagen. De maximale grootte (m) parameter van de kolom varchar kan variëren van 1 tot 255 bytes.  

Nvarchar is ook een gegevenstype dat betrekking heeft op de variabele tekens in SQL Server. In de database kunnen meerdere talen worden opgeslagen.

Als er andere talen worden gebruikt, is er twee keer zoveel ruimte nodig om een ​​uitgebreide set tekens op te slaan. Tijdens het gebruik van Nvarchar worden Unicode-tekens gebruikt.   

Vergelijkingstabel

Parameters van vergelijking: Varchar  Nvarchar 
InterpretatieIn SQL is varchar een gegevenstype dat een tekengegevensset van niet-Unicode van onbepaalde lengte opslaat.In SQL is Nvarchar een gegevenstype om Unicode-tekengegevens met onbepaalde lengte op te slaan.  
Karakter gegevenstypeNiet-Unicode-gegevensUnicode-gegevens
Tekengrootte1 bytes2 bytes
Maximale lengte8,0004,000
Opslag grootteWerkelijke lengte (in bytes)2 keer de werkelijke lengte (in bytes)

Wat is Varchar? 

Het gegevenstype varchar slaat tekenreeksen van verschillende lengte op die tekens van meerdere bytes en van één byte bevatten.

Lees ook:  Schema versus database: verschil en vergelijking

Hierin staat (R) voor het minimum aantal bytes dat gereserveerd is voor de kolom, en m staat voor de maximale grootte van de kolom.  

Een kolom die wordt beschouwd als varchar zonder parameters en haakjes heeft een gereserveerde grootte van nul en een maximale grootte van één byte. In het geval van het plaatsen van een index op een varchar-kolom, is de maximale grootte 254 bytes.

Er kunnen ook tekenreeksen worden opgeslagen die korter zijn dan de m-waarde, maar ook niet langer.  

Het is optioneel om de parameter minimum gereserveerde ruimte (R) op te geven. Deze waarde kan van 0 tot 255 bytes zijn, maar moet kleiner zijn dan de (m) van de varchar-kolom.

Het kan standaard op 0 staan ​​als de minimumwaarde niet is opgegeven. Het is dus nodig om deze parameter op te geven wanneer een gebruiker in eerste instantie een rij met null-tekenreeksen in de kolom invoegt.  

Wanneer een tekenreeks wordt opgeslagen in een varchar-kolom, worden alleen de daadwerkelijke tekens opgeslagen. Als gereserveerde ruimte of (R) niet is opgegeven, maar sommige gegevensstrings korter zijn dan bytes van (R), blijven sommige rijen die zijn gereserveerd voor ruimte ongebruikt. 

Wat is Nvarchar? 

De Nvarchar is een gegevenstype om karaktergegevens op te slaan in een veld van variabele lengte. Niet-Unicode-tekens zoals ASCII worden opgeslagen en vertegenwoordigen de hoofdletters, symbolen, kleine letters en cijfers. Het is noodzakelijk om het maximum van de kolom op te geven.  

Wanneer een index op een Nvarchar-kolom wordt geplaatst, is de maximale grootte 254 bytes. Kortere tekenreeksen kunnen worden opgeslagen, maar niet langer dan de opgegeven waarde. Als er geen minimale ruimtewaarde is opgegeven, is de standaardwaarde 0 van de reserve.

Het is noodzakelijk om de gereserveerde parameter op te geven bij het aanvankelijk invoegen van rijen met gegevenswaarden met geen of weinig tekens in deze kolom.

Lees ook:  Nvidia GT versus GTX: verschil en vergelijking

Later verwacht het de bijgewerkte gegevens met langere waarden. Deze waarde varieert van 0 tot 255 bytes, maar moet kleiner zijn dan de maximale grootte van de kolom.  

Gegevens kunnen een reeks multi-byte of enkel-byte letters, cijfers en andere tekens zijn die worden ondersteund door de codeset van databases die zich bevinden. 

Het gebruik van Nvarchar bezuinigd op de gebruikte ruimte in een tabel heeft geen effect op de indexgrootte. Een index die is gebaseerd op de kolom van Nvarchar, de lengte van elke indexsleutel is gelijk aan de maximale bytes, de maximale grootte van de kolom. 

Belangrijkste verschillen tussen Varchar en Nvarchar 

  1. Varchar wordt gebruikt als de werkelijke gegevens kleiner zijn dan de capaciteit en kolommen met variabele lengte of de gegevenslengte variabel zijn. Maar Nvarchar wordt gebruikt als je Unicode-ondersteuning nodig hebt, zoals Korean Hangul of Japanse kanji-tekens vanwege opslagoverhead.   
  2. Enkele aanhalingstekens worden gebruikt om varchar-literals in te sluiten, bijvoorbeeld 'John'. Aan de andere kant worden letterlijke woorden van Nvarchar ook voorafgegaan door N, zoals N'John.'  
  3. In termen van voordelen neemt Varchar minder geheugenruimte in beslag vanwege de variabele lengte, terwijl Nvarchar het draaien van clientcomputers met verschillende locales ondersteunt.  
  4. Niet-Unicode-tekens zoals ASCII worden opgeslagen in varchar en vertegenwoordigen hoofdletters, symbolen, kleine letters en cijfers. Maar Unicode-tekens die zijn opgeslagen in Nvarchar vertegenwoordigen Grieks, Engels, enz.  
  5. Als het op nadelen aankomt, vermindert varchar de prestaties van een paar SQL-query's, terwijl de extra opslagruimte van Nvarchar-gebruikers niet correct wordt gebruikt.   
Referenties
  1. http://www.vldb.org/conf/2006/p1243-houkjar.pdf

Laatst bijgewerkt: 11 juni 2023

stip 1
Een verzoek?

Ik heb zoveel moeite gestoken in het schrijven van deze blogpost om jou van waarde te kunnen zijn. Het zal erg nuttig voor mij zijn, als je overweegt het te delen op sociale media of met je vrienden/familie. DELEN IS ️

8 gedachten over "Varchar versus Nvarchar: verschil en vergelijking"

  1. De referenties voor extra leesmateriaal voegen academische nauwkeurigheid toe aan het artikel, waardoor het een betrouwbare informatiebron wordt voor professionals op het gebied van databasebeheer.

    Antwoorden
  2. De gegevenstypen Varchar en Nvarchar zijn verwarrend en toch intrigerend. Het is essentieel om de verschillen te begrijpen om het maximale uit de SQL-server te halen.

    Antwoorden
  3. De vergelijkingstabel die u hebt verstrekt, is zeer nuttig bij het begrijpen van de verschillen tussen Varchar en Nvarchar. Bedankt voor het delen van deze inzichtelijke informatie.

    Antwoorden
  4. De uitleg van de gegevenstypen VARCHAR en NVARCHAR is duidelijk en uitgebreid. Ik waardeer de moeite die is gestoken in het verstrekken van gedetailleerde informatie over dit onderwerp.

    Antwoorden
  5. De opname van de belangrijkste verschillen tussen Varchar en Nvarchar aan het einde van het artikel vat de belangrijkste conclusies effectief samen. Een goed gestructureerde en informatieve lectuur.

    Antwoorden
  6. De gedetailleerde uitleg van de gegevenstypen Varchar en Nvarchar, samen met de duidelijke voorbeelden, verbeteren het begrip van dit complexe onderwerp grondig.

    Antwoorden
  7. Het begrijpen van de verschillen tussen Varchar en Nvarchar is van cruciaal belang voor databasebeheer. Dit artikel draagt ​​aanzienlijk bij aan het verhelderen van deze ingewikkeldheden.

    Antwoorden

Laat een bericht achter

Dit artikel bewaren voor later? Klik op het hartje rechtsonder om op te slaan in je eigen artikelenbox!