BUG: "Degree of Derived Table" Error When Using Table Name in Select List

ID: Q228943


The information in this article applies to:


SYMPTOMS

When attempting to issue a SQLSetPos() (UPDATE a record) on a SELECT statement that uses table names in the field/column list, you will receive the following error message:

[Microsoft][ODBC driver for Oracle]Degree of derived table does not match column list.
A simple SELECT statement similar to the following causes the error:

SELECT customer.customer_ID, customer.name FROM customer 
Also, using alias names for the table, as in the following, also causes the error:

SELECT a.name FROM customer a 


CAUSE

This is a bug in the statement parsing routine for the Microsoft Oracle ODBC driver.


RESOLUTION

A supported fix that corrects this problem is now available from Microsoft, but it has not been fully regression tested and should be applied only to systems experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:

http://www.microsoft.com/support/supportnet/overview/overview.asp
The QFE is for the MDAC 2.1 GA stack. The English version of this fix should have the following file attributes or later:

   Date      Time    Version      Size    File name     Platform
   -------------------------------------------------------------
   4/10/99           02.573.4104  138KB   msorcl32.dll
 

NOTE: If this product was already installed on your computer when you purchased it from the Original Equipment Manufacturer (OEM) and you need this fix, please call the Pay Per Incident number listed on the above Web site. If you contact Microsoft to obtain this fix, and if it is determined that you only require the fix you requested, no fee will be charged. However, if you request additional technical support, and if your no-charge technical support period has expired, or if you are not eligible for standard no-charge technical support, you may be charged a non-refundable fee.

For more information about eligibility for no-charge technical support, see the following article in the Microsoft Knowledge Base:
Q154871 Determining If You Are Eligible for No-Charge Technical Support

NOTE: If you are installing this QFE onto a Windows 95 machine, or a machine with the original release of Windows 98, please read the information included in Migrate.exe, which is included in the download.

WORKAROUND

To work around this problem, use coded SQL UPDATE statements to send your data to the database if your SELECT statement contains table names in the field list.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

SQLSetPos() ODBC API is used by several different Microsoft technologies such as ADO, RDO, MFC ODBC, and straight ODBC APIs. You may see the above error message if you are updating data via these database API or object technologies.

Additional query words:


Keywords          : kbADO kbDatabase kbDriver kbODBC kbOracle kbGrpVCDB kbGrpMDAC 
Version           : WINDOWS:2.0,2.5
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: August 5, 1999