 |
|
SQL Server Tips by Burleson |
Char
Char stores fixed length ASCII data. The data is padded with spaces
on the right as this example shows:
DECLARE @b char(10)
SET @b='abc'
select DATALENGTH(@b)
SELECT @b
SELECT CAST(@b as binary(10))
10
abc
0x61626320202020202020
The 202020… are a sequence of spaces. 20 is the hexadecimal
representation of the space character.
Note: An interesting detail is that char can actually store
non-ASCII data. In the previous example let us replace the second
line with this one:
SET @b='abc'+char(1)+char(2)+char(3)
10
abc
0x61626301020320202020
The three bytes are there, although not visible when displayed.
The above book excerpt is from:
Super SQL
Server Systems
Turbocharge Database Performance with C++ External Procedures
ISBN:
0-9761573-2-2
Joseph Gama, P. J. Naughter
http://www.rampant-books.com/book_2005_2_sql_server_external_procedures.htm |