Sintomas
Assuma que utiliza o Microsoft SQL Server 2008 R2, SQL Server 2012 ou SQL Server 2014. Quando executa uma consulta utilizando TOP N e ORDER BY, a consulta atinge uma falha de afirmação semelhante à seguinte:
Localização: "qstopsrt.cpp":384Expressão: fFalseSPID: <SPID>Process ID: <ProcessID>Localização: qxcntxt..cpp:1052Expressão: cref == 0SPID:< SPID>Process ID:< ProcessID>Msg 3624, Nível 20, Estado 1, A verificação de afirmação do sistema line 2A falhou. Verifique o registo de erros do SQL Server para obter mais detalhes. Normalmente, uma falha de afirmação é causada por um bug de software ou corrupção de dados. Para verificar se existe corrupção na base de dados, considere executar o DBCC CHECKDB. Se concordar em enviar despejos para a Microsoft durante a configuração, será enviada uma mini lixeira para a Microsoft. Uma atualização pode estar disponível da Microsoft no mais recente Pack de Serviços ou num QFE de Suporte Técnico. Msg 0, Nível 20, Estado 0, Erro grave da Linha 0A ocorreu no comando atual. Os resultados, se houver, devem ser descartados.
Nota A correção também pode aplicar-se a isso o plano de consulta contém "Sort (Top N Sort)."
Causa
O problema ocorre porque um erro interno no motor de execução de consultas.
Resolução
O problema foi corrigido pela primeira vez na seguinte atualização cumulativa do SQL Server.
Atualização Cumulativa 1 para SQL Server 2012 SP2 /en-us/help/2976982
Atualização Cumulativa 2 para SQL Server 2014 /en-us/help/2967546
Atualização Cumulativa 10 para SQL Server 2012 SP1 /en-us/help/2954099
Atualização Cumulativa 12 para SQL Server 2008 R2 SP2 /en-us/help/2938478
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Confira as últimas atualizações cumulativas do SQL Server:
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".