FIX: Error 8630 When Querying A View Created with a UNION Clause

This article was previously published under Q247056
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 55934 (SQLBUG_70)
When you run a SELECT statement to retrieve data from a view, the following error message may appear:
Server: Msg 8630, Level 17, State 38, Line 1
Internal Query Processor Error: The query processor encountered an unexpected error during execution.
This error may occur if the following conditions are true:
  • The view was created using a UNION clause.

  • The SELECT statement used to retrieve data from the view has a subquery in its WHERE clause.
To work around this problem, try one of the following:
  • Query the table rather than the view.
  • Avoid creating the view with the UNION clause.
  • Avoid using a subquery in the WHERE clause.
Microsoft has confirmed this to be a problem in SQL Server 7.0. This problem has been corrected in U.S. Service Pack 2 for Microsoft SQL Server 7.0. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
254561 INF: How to Obtain Service Pack 2 for Microsoft SQL Server 7.0 and Microsoft Data Engine (MSDE) 1.0
For more information, contact your primary support provider.

Steps to Reproduce the Problem

The following script demonstrates the problem:
Create Table table1(a int, b int)goCreate Table table2(c int, d int)goCreate View view1 as Select a, b From table1UnionSelect a, b From table1go--The following query reproduces the errorSelect a From view1 wherea <> (select c from table2 where d = b) anda <> (select c from table2 where d = b)go				
Error 8630;

Article ID: 247056 - Last Review: 10/22/2013 03:11:33 - Revision: 2.1

Microsoft SQL Server 7.0 Standard Edition

  • kbnosurvey kbarchive kbbug kbfix KB247056