Microsoft KB Archive/100700

From BetaArchive Wiki

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

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 : kbprogramming
Issue type : kbbug
Technology : kbSQLServSearch kbAudDeveloper kbSQLServ420OS2


Last Reviewed: March 24, 2000
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.