CHAR (Transact-SQL)

Wandelt einen int-ASCII-Code in ein Zeichen um.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen


CHAR ( integer_expression )

integer_expression

Dies ist ein ganzzahliger Wert von 0 bis 255. Liegt die ganze Zahl nicht in diesem Bereich, wird NULL zurückgegeben.

Mit CHAR können Steuerzeichen in Zeichenfolgen eingefügt werden. In der folgenden Tabelle finden Sie einige häufig verwendete Steuerzeichen.

Steuerzeichen

Wert

Tabulator

char(9)

Zeilenvorschub

char(10)

Wagenrücklauf

char(13)

A. Verwenden von ASCII und CHAR, um die ASCII-Werte einer Zeichenfolge auszugeben

Im folgenden Beispiel werden der ASCII-Wert und das Zeichen für jedes in der Zeichenfolge New Moon enthaltene Zeichen ausgegeben.

SET TEXTSIZE 0
-- Create variables for the character string and for the current 
-- position in the string.
DECLARE @position int, @string char(8)
-- Initialize the current position and the string variables.
SET @position = 1
SET @string = 'New Moon'
WHILE @position <= DATALENGTH(@string)
   BEGIN
   SELECT ASCII(SUBSTRING(@string, @position, 1)), 
      CHAR(ASCII(SUBSTRING(@string, @position, 1)))
   SET @position = @position + 1
   END
GO

Dies ist das Resultset.

----------- - 
78          N 
              
----------- - 
101         e 
              
----------- - 
119         w 
              
----------- - 
32            
              
----------- - 
77          M 
              
----------- - 
111         o 
              
----------- - 
111         o 
              
----------- - 
110         n 
              
----------- - 

B. Verwenden von CHAR, um ein Steuerzeichen einzufügen

Im folgenden Beispiel wird CHAR(13) verwendet, um den Namen, die E-Mail-Adresse und die Telefonnummer in separaten Zeilen auszugeben, wenn die Ergebnisse in einem Text zurückgegeben werden.

USE AdventureWorks;
GO
SELECT FirstName + ' ' + LastName, + CHAR(13)  + EmailAddress + CHAR(13) 
+ Phone
FROM Person.Contact

WHERE ContactID = 1;
GO

Dies ist das Resultset.

Gustavo Achong
gustavo0@adventure-works.com
398-555-0132

(1 row(s) affected)

Community-Beiträge

HINZUFÜGEN
Anzeigen: