Een van de functies in T-SQL is de UNICODE()
functie. U kunt deze functie gebruiken met SQL Server (en Azure) om de Unicode-waarde van een bepaald teken te retourneren.
Deze functie werkt vergelijkbaar met de ASCII()
functie, behalve dat het de Unicode-waarde retourneert.
Syntaxis
Dit is de officiële syntaxis:
UNICODE ( 'ncharacter_expression' )
Waar ncharacter_expression is een nchar of nvarchar expressie waarvoor u de Unicode-waarde wilt hebben.
Voorbeeld
Als we bijvoorbeeld de Unicode-waarde voor het euroteken willen weten, kunnen we dit doen:
SELECT UNICODE('€');
Resultaat:
8364
Dit resultaat laat zien dat de Unicode-waarde voor het euroteken 8364 is.
Unicode versus ASCII
De UNICODE()
functie werkt vergelijkbaar met de ASCII()
functie, maar met de uitzondering dat het de Unicode-waarde retourneert in tegenstelling tot de ASCII-waarde.
Merk op dat voor de eerste 128 tekens de ASCII- en Unicode-waarden hetzelfde zijn, en daarom zullen deze twee functies dezelfde resultaten opleveren voor de eerste 128 tekens. Echter, de UNICODE()
functie werkt met een veel groter aantal tekens, vanwege de 128 tekens beperking van de ASCII-standaard.
Hier is een voorbeeld van de ASCII()
en UNICODE()
functies naast elkaar:
SELECT UNICODE('A') AS Unicode, ASCII('A') AS ASCII;
Resultaat:
Unicode ASCII ------- ----- 65 65
We kunnen dus zien dat ze in dit geval hetzelfde resultaat hebben geretourneerd. Dit komt doordat de letter A
valt binnen het bereik van ASCII-codes (en valt daarom ook binnen het Unicode-bereik).