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)
SYMPTOMS
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.

    -and-
  • The SELECT statement used to retrieve data from the view has a subquery in its WHERE clause.
WORKAROUND
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.
STATUS
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.
MORE INFORMATION

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;
Properties

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
Feedback