Mudanças entre as edições de "Solução de Problemas do SQL Server"
m (→Query mais rápida no SSMS do que no LATROMI) |
(→Query mais rápida no SSMS do que no LATROMI) |
||
Linha 2: | Linha 2: | ||
== Query mais rápida no SSMS do que no LATROMI == | == Query mais rápida no SSMS do que no LATROMI == | ||
− | Vários fatores podem influenciar no tempo que uma consulta leva pra ser executada no banco de dados. Dentre esses fatores estão a falta (ou má utilização) de índices, a quantidade de registros, ou até mesmo a complexidade da QUERY. Mas se a QUERY leva menos tempo para executar no SSMS (Sql Server Management Studio) do que no LATROMI, o problema pode estar nas opções que são configuradas por padrão no SSMS e que não foram configuradas na aplicação. Geralmente, a opção que faz a diferença nesse caso é [https://docs.microsoft.com/pt-br/sql/t-sql/statements/set-arithabort-transact-sql?view=sql-server-2017 | + | Vários fatores podem influenciar no tempo que uma consulta leva pra ser executada no banco de dados. Dentre esses fatores estão a falta (ou má utilização) de índices, a quantidade de registros, ou até mesmo a complexidade da QUERY. Mas se a QUERY leva menos tempo para executar no SSMS (Sql Server Management Studio) do que no LATROMI, o problema pode estar nas opções que são configuradas por padrão no SSMS e que não foram configuradas na aplicação. Geralmente, a opção que faz a diferença nesse caso é '''[https://docs.microsoft.com/pt-br/sql/t-sql/statements/set-arithabort-transact-sql?view=sql-server-2017 ARITHABORT]'''. |
− | Habilite essa opção antes da chamada da QUERY ou STORED PROCEDURE | + | Habilite essa opção antes da chamada da QUERY ou STORED PROCEDURE: |
+ | <source lang="sql"> | ||
+ | SET ARITHABORT = ON | ||
+ | </source> | ||
− | ''OBS.: Use a ferramenta Profiler para | + | ''OBS.: Use a ferramenta [https://docs.microsoft.com/sql/tools/sql-server-profiler/sql-server-profiler?view=sql-server-2017 SQL Server Profiler] para verificar as opções configuradas para cada aplicação.'' |
=== Exemplos === | === Exemplos === |
Edição das 15h23min de 18 de julho de 2018
Esse artigo fornece algumas dicas para lidar com problemas do SQL Server, que podem afetar a utilização do LATROMI.
Índice
Query mais rápida no SSMS do que no LATROMI
Vários fatores podem influenciar no tempo que uma consulta leva pra ser executada no banco de dados. Dentre esses fatores estão a falta (ou má utilização) de índices, a quantidade de registros, ou até mesmo a complexidade da QUERY. Mas se a QUERY leva menos tempo para executar no SSMS (Sql Server Management Studio) do que no LATROMI, o problema pode estar nas opções que são configuradas por padrão no SSMS e que não foram configuradas na aplicação. Geralmente, a opção que faz a diferença nesse caso é ARITHABORT.
Habilite essa opção antes da chamada da QUERY ou STORED PROCEDURE:
SET ARITHABORT = ON
OBS.: Use a ferramenta SQL Server Profiler para verificar as opções configuradas para cada aplicação.
Exemplos
SELECT
SET ARITHABORT = ON SELECT Orders.OrderID, SUM((UnitPrice * Quantity) - Discount) AS UnitPriceTotal FROM [Order Details] INNER JOIN Orders ON Orders.OrderID = [Order Details].OrderID WHERE OrderDate BETWEEN '2017-01-01' AND '2017-12-31' GROUP BY Orders.OrderID
STORED PROCEDURE
SET ARITHABORT = ON EXEC SP_GET_ORDERS_SUMMARY '2017-01-01', '2017-12-31'