REVISIÓN: La instrucción UPDATE compleja devuelve error 8624 interno SQL Server

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

286249
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Error nº: 351305 (SHILOH_bugs)
Síntomas
Una instrucción UPDATE que contiene una subconsulta, que selecciona de una tabla derivada formada a partir de una UNION ALL, puede generar el mensaje de error siguientes:
Servidor: Mensaje 8624, nivel 16, estado 21, línea 2
Error interno de SQL Server.
Solución
Para resolver este problema, consiga el Service Pack más reciente para Microsoft SQL Server 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290211INF: Cómo obtener el Service Pack más reciente de SQL Server 2000
Solución
Si es posible reescribir la consulta utilizando sólo el operador UNION, sin la palabra clave ALL.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:" de este artículo. Este problema se corrigió por primera vez en el Service Pack 1 de Microsoft SQL Server 2000.
Más información
Para reproducir este error, ejecute esta secuencia de comandos:
CREATE TABLE MaxCol(PK INT PRIMARY KEY,f1 INT,f2 INT,mx INT)GOUPDATE MaxColSET mx =    (SELECT MAX(f)    FROM        (        SELECT f1 AS f        FROM MaxCol AS A        WHERE A.PK=MaxCol.PK        UNION ALL        SELECT f2        FROM MaxCol AS B        WHERE B.PK=MaxCol.PK        ) AS TU    )				

Advertencia: este artículo se ha traducido automáticamente

Propiedades

Id. de artículo: 286249 - Última revisión: 01/16/2015 21:28:38 - Revisión: 3.2

  • Microsoft SQL Server 2000 Standard Edition
  • kbnosurvey kbarchive kbmt kbbug kbfix kbsqlserv2000sp1fix KB286249 KbMtes
Comentarios