Het verschil tussen varchar en nvarchar

05-06-2011 | Marcel van Langen | ColdFusion | database, sql server, mysql, type

SQL Server biedt een ruim aanbod aan datatypen. Zo ruim zelfs dat het goed is als ontwikkelaar om je zo nu en dan af te vragen of je wel de juiste keuzes maakt. Natuurlijk is het goed om op de hoogte te blijven van nieuwe datatypen die in nieuwere versies van SQL Server worden geintroduceerd. Maar ook de keus tussen VARCHAR en NVARCHAR verdient een korte toelichting.

In de praktijk werkt VARCHAR grotendeels identiek aan NVARCHAR. VARCHAR staat voor "variable-length character string". De extra N in NVARCHAR staat voor uNicode. Simpel gezegd is een NVARCHAR veld een VARCHAR veld met ondersteuning voor zogenaamde "two-byte characters". Unicode is een internationale standaard, die alle tekens en symbolen van alle geschreven talen voorziet van een nummer. Doel van Unicode is om dit voor ALLE gebruikte schriften (dus ook Grieks en Chinees) te ondersteunen. Zeker bij het maken van een internationale applicatie ligt de keus voor NVARCHAR dus voor de hand.

Waarom dan toch in sommige gevallen nog kiezen voor VARCHAR? De opslagruimte voor een NVARCHAR karakter is twee keer het aantal bytes als bij een VARCHAR veld. Immers, VARCHAR wordt opgeslagen als 8 bits data, NVARCHAR als UTF-16 en dus 16 bits data. Hoewel dit nog niet zoveel zegt over performance, zegt dit wel iets over de uiteindelijke grootte van de database en ook de backup duur van een database. Je kunt overigens altijd een VARCHAR veld omzetten naar NVARCHAR veld, maar vice versa is niet mogelijk. Houd dit voor ogen bij het maken van je datamodel!

Over Morloff

Morloff ontwerpt en realiseert succesvolle webtoepassingen op het gebied van procesoptimalisatie, eCommerce en rapportage door de inzet van moderne webtechnieken, sociale media en zoekmachine optimalisatie.

over ons | diensten | portfolio | contact | route

naar website IJsmonster.nl naar website ICT intermediairs naar website marcelvanlangen.com

Twitter

Morloff

Cuneraweg 169a
3911 RH Rhenen

M +31 (0)6 - 515 96 189
W www.morloff.nl
E contactformulier

Morloff op Twitter Morloff op Facebook Morloff op LinkedIn Morloff via RSS