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

ID: Q100700


The information in this article applies to:


BUG# OS/2: 1709 (4.2)
       NT:  279 (4.2) 

SYMPTOMS

A column mismatch in the two SELECTs making up a UNION in a SELECT-based INSERT will 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 OS/2 and 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           : 4.2 | 4.2
Platform          : OS/2 WINDOWS 
Issue type        : 

Last Reviewed: March 16, 1999