BUG: Convert Defaults to 30 When No Length Is Given

ID: Q80640


The information in this article applies to:


BUG#: OS/2: 1261 (4.2)
        NT:  885 (4.2) 

SYMPTOMS

A statement of the form,


   select convert(varchar, <column>) from <table>, 

where <column> is a char, varchar, or text column in <table>, returns the first 30 characters of <column>. The documentation for the CONVERT function in the Microsoft SQL Server Transact-SQL Reference states:

   "If no length is specified when converting to varchar or varbinary
   datatypes, the data adapts to any size necessary." 

That is, if <column> is of type char(100), the above text implies that the above SELECT statement must return all the characters in <column>.


CAUSE

The value of 30 is incorrectly hard coded as the default when no length is specified as the default.


STATUS

Microsoft has confirmed this to be a problem in SQL Server version 4.2 for OS/2 and Microsoft SQL Server version 4.2. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional query words: Windows NT


Keywords          : kbprg SSrvProg SSrvWinNT 
Version           : 4.2 | 4.2
Platform          : OS/2 WINDOWS 
Issue type        : 

Last Reviewed: March 17, 1999