PRB: CONVERTing Character to an Integer Causes Syntax Error

ID: Q47180


The information in this article applies to:


SYMPTOMS

According to the "Microsoft SQL Server Language Reference," you can convert from a character to an integer. However, the following statement,


   select convert(int,'A') 

causes the following error:
Msg 249, Level 16, State 1
Syntax error converting CHAR value 'A' to an INT4 field


CAUSE

A convert() from a char to an integer can only be done if it "makes sense." For example, you can convert the character "1" (one) to an integer, but you cannot convert the letter "A". For example


   select convert(int,'1') 

returns 1 as expected.


WORKAROUND

To return the ASCII numerical representation of a letter, use the ascii() function. For example


   select ascii('A') 

returns 65.

Additional query words: Transact-SQL Windows NT


Keywords          : kbother SSrvGen SSrvServer SSrvWinNT 
Version           : 
Platform          : OS/2 WINDOWS 
Issue type        : 

Last Reviewed: March 9, 1999