ASCII (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-Endpunkt in Microsoft FabricWarehouse in Microsoft Fabric

Gibt den ASCII-Codewert des ersten Zeichens eines Zeichenausdrucks zurück.

Transact-SQL-Syntaxkonventionen

Syntax

ASCII ( character_expression )  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) oder früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

character_expression
Ein Ausdruck des Typs char oder varchar.

Rückgabetypen

int

Bemerkungen

Die Abkürzung ASCII steht für American Standard Code for Information Interchange. Es dient als ein Zeichencodierungsstandard für moderne Computer. Eine Liste mit ASCII-Zeichen finden Sie im Abschnitt Printable characters (Darstellbare Zeichen) des Artikels ASCII.

ASCII ist ein 7-Bit-Zeichensatz. Erweiterte oder hohe ASCII sind ein 8-Bit-Zeichensatz, der nicht von der ASCII-Funktion behandelt wird.

Beispiele

A. In diesem Beispiel, in dem von einem ASCII-Zeichensatz ausgegangen wird, wird der Wert ASCII für sechs Zeichen zurückgegeben.

SELECT ASCII('A') AS A, ASCII('B') AS B,   
ASCII('a') AS a, ASCII('b') AS b,  
ASCII(1) AS [1], ASCII(2) AS [2];  

Hier ist das Resultset.

A           B           a           b           1           2  
----------- ----------- ----------- ----------- ----------- -----------  
65          66          97          98          49          50  

B. In diesen Beispielen wird gezeigt, wie ein 7-Bit-ASCII-Wert ordnungsgemäß zurückgegeben wird, ein erweiterter 8-Bit-ASCII-Wert jedoch nicht behandelt wird.

SELECT ASCII('P') AS [ASCII], ASCII('æ') AS [Extended_ASCII];

Hier ist das Resultset.

ASCII       Extended_ASCII
----------- --------------
80          195

Verwenden Sie die Ausgabewerte mit der CHAR- oder NCHAR-Funktion, um zu überprüfen, ob die oben angegebenen Ergebnisse dem richtigen Zeichencodepunkt zugeordnet sind:

SELECT NCHAR(80) AS [CHARACTER], NCHAR(195) AS [CHARACTER];

Hier ist das Resultset.

CHARACTER CHARACTER
--------- ---------
P         Ã

Beachten Sie aus dem vorherigen Ergebnis, dass das Zeichen für den Codepunkt 195 Ã und nicht æ ist. Das liegt daran, dass die ASCII-Funktion zwar den ersten 7-Bit-Stream, aber nicht den zusätzlichen Bit lesen kann. Der korrekte Codepunkt für das Zeichen æ kann mit der UNICODE-Funktion gefunden werden, die in der Lage ist, den richtigen Zeichencodepunkt zurückzugeben:

SELECT UNICODE('æ') AS [Extended_ASCII], NCHAR(230) AS [CHARACTER];

Hier ist das Resultset.

Extended_ASCII CHARACTER
-------------- ---------
230            æ

Siehe auch

CHAR (Transact-SQL)
NCHAR (Transact-SQL)
UNICODE (Transact-SQL)
Zeichenfolgenfunktionen (Transact-SQL)