Temos aplicativos de terceiros. Em um dos relatórios nos dá mensagem de erro:
Microsoft OLE DB Provider for SQL Server: Subconsulta retornou mais de 1 valor. Isso não é permitido...
Preciso descobrir qual instrução causa esse erro. A duração do relatório é bastante longa - cerca de várias horas. Desejo configurar a sessão de evento estendida para detectar esse erro. Estou certo? Existem outras maneiras (exceto xEvents e rastreamento) para obter essa instrução SQL incorreta?
relate perguntas
-
SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado
-
Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?
-
Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Como determinar se um Índice é necessário ou necessário
Neste caso, se você quiser usar o XE, pode obtê-lo através de "sqlserver.error_reported". O número de erro para uma subconsulta que retorna mais de um valor é 512 - portanto, podemos filtrar APENAS números de erro de 512.
Código de Sessão XE: