FIX: Column Mismatch on SELECT-UNION in INSERT Causes Srv GPF

ID: Q100700


The information in this article applies to:
  • Microsoft SQL Server version 4.2x

BUG# NT: 279 (4.2)

SYMPTOMS

A column mismatch in the two SELECTs making up a UNION in a SELECT-based INSERT, cause the server to general protection fault (GP-fault). This should only generate a syntax error for the user issuing the INSERT.

The following command causes the server to GP fault:


   INSERT INTO table1
     (month_date , year_date  )
   SELECT t2.month_d, t2.year_d
   FROM table2 t2
   UNION
   SELECT t3.month_d       /* missing year_d */ 
   FROM table3 t3
   go 

Note that this syntax error in the UNION column lists only causes of the trap if the UNION is in an INSERT statement. Running the UNION by itself generates a syntax error.


WORKAROUND

Correct the column lists and run the column again.


STATUS

Microsoft has confirmed this to be a problem in SQL Server version 4.2 for Windows NT. This problem was corrected in SQL Server version 6.0. For more information, contact your primary support provider.

Additional query words: insert Transact-SQL union Windows NT

Keywords : kbprg kbbug4.20 kbfix6.00 SSrvServer SSrvWinNT
Version : winnt:4.2x
Platform : winnt
Issue type :


Last Reviewed: November 1, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.