Microsoft KB Archive/105365

{|
 * width="100%"|

BUG: dbcursorcolinfo Returns Invalid Column Types

 * }

Q105365

-

The information in this article applies to:


 * Microsoft SQL Server Programmer's Toolkit, version 4.2

-

BUG# 9460 (4.2)

SYMPTOMS
When using dbcursorcolinfo to determine the column type of a cursored results set, unexpected values are returned for the column type. These values do not correspond with the column types returned by calling dbcolinfo to determine column type in a non-cursored results set.

CAUSE
The DB-Library function dbcursorcolinfo returns the column type stored in syscolumns rather than the column types documented for dbcolinfo.

STATUS
Microsoft has confirmed this to be a problem in DB-Library version 4.20.00. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION
The following table shows the column type returned by dbcolinfo and by dbcursorcolinfo when the column is NOT NULL or NULL.

Datatype        dbcolinfo       cursored (NOT NULL)   cursored (NULL)

binary          SQLBINARY         SQLBINARY             SQLVARBINARY bit             SQLBIT            SQLBIT                N/A char            SQLCHAR           SQLCHAR               SQLVARCHAR datetime        SQLDATETIME       SQLDATETIME           SQLDATETMIN float           SQLFLT8           SQLFLT8               SQLFLTN image           SQLIMAGE          SQLIMAGE              SQLIMAGE int             SQLINT4           SQLINT4               SQLINTN money           SQLMONEY          SQLMONEY              SQLMONEYN real            SQLFLT4           SQLFLT4               SQLFLTN smalldatetime   SQLDATETIM4       SQLDATETIM4           SQLDATETIMN smallint        SQLINT2           SQLINT2               SQLINTN smallmoney      SQLMONEY4         SQLMONEY4             SQLMONEYN text            SQLTEXT           SQLTEXT               SQL TEXT timestamp       SQLBINARY         SQLVARBINARY          SQLVARBINARY tinyint         SQLINT1           SQLINT1               SQLINTN varbinary       SQLBINARY         SQLVARBINARY          SQLVARBINARY varchar         SQLCHAR           SQLVARCHAR            SQLVARCHAR

Returned column types such as SQLVARCHAR should be translated to the expected return type of dbcolinfo. Using these values to identify data types in functions such as dbconvert can cause errors.

Additional query words: DB-Lib datatype dblib

Keywords : kbprogramming

Issue type :

Technology : kbSQLServSearch kbAudDeveloper kbSQLServPTK420